"A human being should be able to change a diaper, plan an invasion, butcher a hog, conn a ship, design a building, write a sonnet, balance accounts, build a wall, set a bone, comfort the dying, take orders, give orders, cooperate, act alone, solve equations, analyze a new problem, pitch manure, program a computer, cook a tasty meal, fight efficiently, die gallantly. Specialization is for insects." (Robert A. Heinlein)

Saturday, 13 November 2010

Nokia QT: Compiling a Symbian application

After my initial testing of Nokia QT I had still the whole mobile application compilation part to test. So, once the Ubuntu upgrade season has ended, I decided to take some time and try to compile my simple “hello world” program as a Symbian application and test it on my Nokia 5800 phone.
Linux version of Nokia QT, as I did already write, doesn't directly support compilation of mobile applications. This is some way solved by the “remote compiler”; an experimental service, provided by Nokia forum, that compiles sources sent to it returning back the mobile device installation file. The whole process might look complex at first, but it's well documented both in Nokia QT help files and in forum's pages.

Remote compiler configuration

In order to access to the remote compiler service you must be registered to Nokia QT forum; once registered you can configure your user-name an password in remote compiler configuration form and start using then service.

QT - 13112010 - 14-02-31

Preparing the project

I so loaded the hello world project and selected the “project” button on QT side bar. I added the remote compiler to project targets (by clicking on the “plus” icon on the right side) and selected a configuration setting that more suited with my device (Symbian 5th edition).


I then selected the “Build all” button and QT sent the project sent the project to the server for compiling, after a while it returned with the compiled file and a long message filled of warnings that, I must admit it, I didn't care to read.


Installation on a Symbian phone

In order to install a QT application on a Symbian phone QT libraries must be installed first. QT libraries can be downloaded from this page in Nokia ftp site, a good selection of demo programs is also provided at the same location. Demo programs provided from Nokia give a good example of what you can do with QT, they would merit a post on their own.


Once QT system files where installed I eventually installed my just compiled application, here is how it looks like on the Nokia 5800 XM.


Conclusions (Java ME or QT?)

Compiling a QT program, with Linux, might look complex a first but it turned out being simpler than I expected. At last I spent more time reading provided documentation than doing it. One question arises spontaneous to me: Better to develop mobile applications with Java ME or Nokia QT? I am a big fan of Java, since I use it at work, and from the mobile point of view it cam be deployed on a wider base of devices (especially on the low-end side). On the other hand QT is actually restricted to a smaller rang of devices but I've been really impressed by its ease to use and the capability to hide non-necessary code. Last but not least QT applications on Nokia look definitively cooler than Java ME Applications. Of course, as I already said, you can't judge a language from its “hello world” program but developing mobile applications with QT looks like a really interesting option.