BlackBerry Qt Porting Program

Published Monday December 17th, 2012 | by

Today’s guest blogger is Hashiq Nazir, BlackBerry Developer Evangelist at Research In Motion UK Limited.

 

Qt is important to Research In Motion (RIM). It is so important to us that it has helped us create the new user experience of cascades.

We were proud to be part of Qt Developer Days in Santa Clara and also the gathered Qt Community. We had our own booth setup near the entrance of the main exhibitors room where we showcased the BlackBerry 10 OS and also spoke to Developers about the excitement surrounding the upcoming BlackBerry 10 OS that will launch on the 30th January (not long to go now). After seeing the OS for themselves, they hopefully also shared our excitement.

Alec Saunders our VP of Developer Relations had a Keynote speech where he presented BlackBerry 10, which is a brand new mobile computing platform for smartphones, tablets and embedded mobile communications devices. He also communicated RIMs involvement with Qt and how you as Developers stand a fair chance of getting great rewards for your Qt Applications.

We seeded eager Developers with BlackBerry 10 Dev Alpha devices for them to port over their existing MeeGo / Symbian Qt Applications and also provided some technical support. For Qt Mobile Application Developers, BlackBerry 10 offers the ability to get a revenue return on your investments. That’s right now. Today.

We do realize that not everyone can get to these events and so we have the BlackBerry Qt Porting Program that is an Online offer so that Eligible Developers can get their hands on BlackBerry Dev Alpha Devices. For complete details, see Official Program Terms and Conditions.

 

What you need to do is:

 

For BlackBerry 10 to be successful we need Qt Developers to bring us their applications and also a strong Qt Development framework and therefore we also have an offer of a one-time donation of $10,000 USD to the Qt Project Hosting Foundation if 50 eligible Qt apps are ported to BlackBerry 10 by the Qt Community and then posted and available for sale in BlackBerry App World by January 30, 2013(*)

 

Criteria:

  • •  Become a BlackBerry World Vendor.
  • •  Apps must be submitted to BlackBerry World by Jan. 20/13 and be approved.
  • •  50 Qt apps must be up for sale in BlackBerry World by Jan.30/13.

 

It was fantastic being part of Qt Developer Days in Santa Clara but this is the start for us and by no means the end. We are actively working with Digia and the Qt foundation to further strengthen Qt and our relationship with it and also with you.

 

Below are some links of how we can help you develop for us:

•  Qt Project Wiki:

•  Qt Project Group:

•  Open Jam Sessions for Qt developers to talk to RIM internal Qt experts about technical problems.

•  Porting Qt to BlackBerry 10:

•  Built for BlackBerry and the 10k Developer Commitment:

 

Ash Nazir
@ashnazir

 

  • * To be eligible, fifty (50) Qt Apps (“Apps”) must be submitted to BBAW by the Qt Community by 11:59:59 PM Eastern Time (“ET”) on January 20, 2013. Apps will be accepted beginning at 8:00 AM ET on December 8, 2012. Allow a minimum of ten (10) days for BBAW approval. Approved apps must be posted on BBAW for sale on or before January 30, 2013. Apps are not eligible if they simply contain a web launcher or shortcut or a web browser (“Excluded App”). RIM will confirm if Qt Community is eligible for $10,000 USD donation to the Qt Project Hosting Foundation (“Donation”) by February 28, 2013. Allow 8-12 weeks for delivery of Donation. Void where prohibited or restricted by law.

 

 

Did you like this? Share it:

Posted in Uncategorized

22 comments to BlackBerry Qt Porting Program

HAFIANE says:

I am a Qt symbian develelopper, and I want to port my applications to BB10
Can you help me to get Developper device to test my application for BB10.
Thanks

Mad says:

Really, 10k $ for 50 on sale apps? I mean, really? You don’t really mean that, do you?

Chris says:

50 snakes, dude, 50 asteroids
;)

Davide says:

Really, 10k $ for 50 on sale apps? I mean, really? You don’t really mean that, do you?
I can’t believe it either, seems like a BAD joke, they may have a financial problems but 10,000$ for 50 apps seems…ridiculous, i mean it.

REWARD: Each eligible Participant will receive a Reward consisting of one (1) Dev Alpha device…. which will require the Participant to return the Device to Sponsor at their request…..The Device will be deactivated by Sponsor on or around the date of the launch of Sponsor’s BlackBerry 10 device
OK cool reward for my hard work, a dev phone! but wait..you take it back?

RIM will confirm if Qt Community is eligible for $10,000 USD donation to the Qt Project Hosting Foundation (“Donation”) by February 28, 2013
They’ll probably check every single application, and if ONE application doesn’t suit their standards they won’t make the donation.

In the end they just lend you a phone to port apps, and that’s ok, but don’t make it sounds like it’s a “”reward””.

Really, I would be ashamed to publicize such a program >_<"

Chris says:

I have huge difficulties to configure, compile and run even the most basic Qt application: the simulator crashes, or disconnects, the debugger crashes. Reboot is so often needed. The funniest of all: if you open the virutal keyboad, the Qt app disappears. And Qt loses sometimes the Device configuration.

Does RIM intend to finish Qt properly at all?

How about mkspec? Why does sometimes the program compile in C++11 mode and sometimes the compiler reports problems with the mkspec?

How about incremental uploads of the compiled application? And how about bringing BB10 NDK for the Playbook sooner?

Fabian says:

Hi Chris,

I have huge difficulties to configure, compile and run even the most basic Qt application
I am not sure what your exact problem here is. Are you compiling Qt? Or Using the Qt provided by the Gold NDK.

How about mkspec? Why does sometimes the program compile in C++11 mode and sometimes the compiler reports problems with the mkspec?
I am also not sure what you are referring to here. A simple qmake, make works fine for all qt applications I have compiled so far for BB10. Which platform and compiler are you using?

the simulator crashes, or disconnects, the debugger crashes. Reboot is so often needed.
I know there are still some problems with the toolchain and we are working hard to fix these. But the device images are all still beta.

if you open the virutal keyboad, the Qt app disappears
This should be fixed in upstream Qt for over 2 weeks now and will be in the next public device images

And how about bringing BB10 NDK for the Playbook sooner?
This is not something you can do over night unfortunatelly :). The focus is currently on the BB10 launch.

If you have any further problems, I would invite you to #qt-qnx on freenode I am sure we can solve them there.

Chris says:

How about mkspec? Why does sometimes the program compile in C++11 mode and sometimes the compiler reports problems with the mkspec?
I am also not sure what you are referring to here. A simple qmake, make works fine for all qt applications I have compiled so far for BB10. Which platform and compiler are you using?

I am sorry. I have no idea how to explain that properly. When I use -W, -std=c++0x sometimes I get errors in:

In file included from c:/bbndk/target_10_0_9_1673/qnx6/usr/share/qt4/mkspecs/blackberry-x86-qcc/qplatformdefs.h:42:0,
from ../MyUhr/qmlapplicationviewer/qmlapplicationviewer.cpp:19:
c:/bbndk/target_10_0_9_1673/qnx6/usr/share/qt4/mkspecs/blackberry-x86-qcc/../qnx-x86-qcc/qplatformdefs.h: In function ‘int getpagesize()':
c:/bbndk/target_10_0_9_1673/qnx6/usr/share/qt4/mkspecs/blackberry-x86-qcc/../qnx-x86-qcc/qplatformdefs.h:95:12: error: ‘::sysconf’ has not been declared
c:/bbndk/target_10_0_9_1673/qnx6/usr/share/qt4/mkspecs/blackberry-x86-qcc/../qnx-x86-qcc/qplatformdefs.h:95:22: error: ‘_SC_PAGESIZE’ was not declared in this scope
cc: C:/bbndk/host_10_0_9_404/win32/x86/usr/lib/gcc/i486-pc-nto-qnx8.0.0/4.6.3/cc1plus caught signal 1
make: *** [qmlapplicationviewer.o] Error 1

I think when I create and compile the most basic Qt application and compile it once, then if I add

QMAKE_CXXFLAGS += -Wc,-std=c++0x

and then some nonesens like:
auto i = 1;
qDebug() << "An auto variable: " << i;
int *ptrI = &i;
qDebug() << "The value at: " << ptrI << " is " << *ptrI;

QTime time = QTime::currentTime();
qsrand((uint)time.msec());

while (ptrI)
{
*ptrI = qrand();
qDebug() << "Address " << ptrI;
qDebug() << "contains: " << *ptrI;
if ( *ptrI % 2)
{
ptrI = nullptr;
}
else
{
qDebug() << "And it is not an even number!";
}

}

if (nullptr == ptrI)
qDebug() << "Null pointer";

It compiles and runs. If I clean and rebuild I get the errors above.

Chris says:

Thank you for your reply. What bothers me most is not that everything happens so slow but the unknown if standard Qt (the non-Cascades) will ever be properly supported? I just want to be able to use Qt for my multimedia applications across Desktop, BB10 and Android. I want to develop on the Desktop without any simulators and then to port to BB10 (which would be my primary target anyway) and Android (eventually).
I don’t want to invest months of work just to find out that I should have used the non-portable Cascades.

Hi Chris!

Not sure you have noted that there is a full (excluding QtWebKit for now) port of Qt on BlackBerry 10. What do you mean with “will ever be properly supported”?

On a general note, you can develop on desktop without any simulators, but your app will never be perfect on any of the target platforms. Qt is a unique dev platform letting people to go very far with this, but you still will need to go “the last mile by feet”, so to say, and tune your app for a given platform. Or in others words, “an” application is feasible for all platforms, you will need to extra work for a “really good” application.

Talking about Cascades. you can consider to offload apps business logic into C++ modules and load them as plugins in QML. Your UI back-end can be either in Cascades or in Qt Quick depending which target platform you use.

> Does RIM intend to finish Qt properly at all?

Well, we had spent the evening of our Christmas party in getting critical fixes in Qt integrated into the next release. I heard there are folks in other BB10 teams who are working for a very long time w/o a single weekend! And we all do so since we are proud to get it done and we like what we do. So, we all do intend to get it done properly, including Qt! If you have concrete problems, referring to a particular version of NDK and device OS image is a big help to resolve them. Actually, all bugs should start going to https://bugreports.qt-project.org/.

BB10 Newbie says:

Chris

I have started working with Cascade myself. With respect to the GUI, Cascade’s only similiarities with Qt begin and end with QObject. You have to learn the Cascade API to build an effective and usable app. Cascade is a very simple API, some might even argue that it is to simple, but it is pretty fast and stable right now. I wish RIM would open source Cascade so others might build and add to it, maybe even make it usable on Android devices. This would reflect more on the imprtance of QT to RIM then their solicitating for 50 appliations at $200 each.

Chris says:

Well Cascades limits you just to BB10. For my purposes QtQuick is more than enough and it is also portable.

[…] for Linux (64 and 32 bit), Mac OS X (10.7 and 10.8) and Windows. It supports iOS, Android but also BlackBerry and, to some extent, Windows 8.Digia promises that most – which means, notably, not all […]

[…] Linux (64 and 32 bit), Mac OS X (10.7 and 10.8) and Windows. It will support iOS, Android but also BlackBerry and, to some extent, Windows 8.Here’s how Digia pitches Qt 5.0 in a press release:Digia has […]

Hashiq says:

Hi Davide,

The $10,000 is a way to assist Qt and Qt Developers. We could of said 1000 Apps but that doesn’t really help anyone does it. The Dev device is to help Devs make applications. If they submit apps they can be eligable for a Limited edition BlackBerry 10 Device https://developer.blackberry.com/limitededition/

Please don’t worry about RIM not making a donation. The deadline is no where near us yet. We want to work with the Qt community and not against it.

Thanks

Ash
@ashnazir

Anojan S. says:

Hi,

Why not drop the ultimatum, and donate in good faith? For something that could ultimately decide the future of RIM, $10000 is just chump change.

[…] QPA، مما يسمح لـ Qt لعبور المزيد من المنصات كـ iOS ، Android و BlackBerry هذا الأخير الذي تعتمد تطبيقاته في نسخته الأخيرة كليا […]

[…] المنصات كـ iOS ، Android و BlackBerry هذا الأخير الذي […]

Ladonnarey says:

hello, I know you must have heard this countless times but yes! I have a application idea and I am not a developer nor do I have the finances to hire one, but I’m sure it will be a great hit who can I contact or where can I get assistance? I have heard of sites where you put up your ideas and wait for investors to invest in your idea but I just think its a bit too risky is there any other option?

How are we looking. Is there a approximate count yet?

Ionut Dediu says:

Is this developer program closed now? I would like to port my Qt apps to BB10, but I need a BB10 device …
How can I get one? I bought the Playbook but it doesn’t have BB10 on it; Plus setting up Qt on Playbook right now is quite hard (I’l need to compile Qt, set up a Linux environment, etc :( ); and even if I go through all this trouble of setting up Qt 4.8.3 for Playbook in a few months time I will have to rewrite my port when BB10 with cascades will come to Playbook. So please Blackberry, either release BB10 for PB asap, or give me one free BB10 device :)

Here are my apps:
http://store.ovi.com/publisher/deion/

Thanks

[…] am sure many of y&#111&#117&#32participated in the BlackBerry Qt Porting Program &#97&#110&#100 helped get in Qt-based apps for BB10. Congrats to&#32&#121&#111u […]

Commenting closed.