Qt for Symbian for Linux and Apple

Published by at

Hopefully you will have seen Steve’s posting about Lucian Tomuta’s video on using Qt to develop apps for Symbian devices. If, however, your computer runs on Linux or Apple you may have run into a small problem, there is no compiler for Symbian apps on these platforms. But never fear, there is a solution.

Version 1.0 of the Qt SDK came with the quiet release beta of a component called Remote Compiler. Part of the reason for the low profile is that, according to the Forum Nokia wiki, the backend infrastructure is not scaled for production loads. The solution does, however, seem to work well. So, how do you get started?

Remote Compiler is not included in the installation of the Qt SDK by default, when installing you have to select the Custom option, not Full (sic). Then in the Select Components window, open the Experimental APIs option and select Remote Compiler.

Nokia Qt SDk Setup showing options to install Remote Compiler

Once this is done, you complete the installation as normal. If the Qt SDK is already installed, located and run the SDK Maintenance Tool. You will find it in the SDK’s installation folder. Select Remote Compiler from the options and update the SDK.

Usings the SDK Maintenance Tool to add Remote Compiler

When you start (or restart) the Qt SDK don’t dive straight into a project, you need to enable Remote Compiler first. To do this, on the Tools menu click Options. Open Projects and look for the Remote Compiler tab. In the tab, accept the Terms of Service (a link in at the bottom of the dialogue, where it says Review the Terms of Service in the image below). Now you need to authenticate yourself, using your Forum Nokia user name and password — if you don’t have these you need to register on Forum Nokia.

Remote Compiler options

Once authenticated you are ready to create a project. As you create a project you will see Remote Compiler options listed as targets in the project setup.

Project setup showing Remote Compiler targets

When you have created your app and made any changes, you need to setup the compiler. In the Qt SDK click the Projects icon and select Remote Compiler Build. Then select the S60 platform you want to build for.

Remote Compiler build definition

Now it’s simply a case of ensuring the project is set to use the Remote Compiler and then clicking the hammer icon to build the application.

Selecting the build

After a short while a self signed SIS file is delivered to your chosen output directory. You can then transfer the file to your device which, unlike the Nokia N8 Lucian used in his demo, will need the Qt libraries installed first. Unfortunately the necessary files are not included in the SDK (at least not in the Linux version — they are in the Windows version). For a Nokia device you need to download qt_install.sis from the Qt FTP site and install it. For other Symbian devices the correct process would be to install qt_selfsigned.sis and Open C/C++. This is not that simple as Open C/C++ installation file you need is in the Open C/C++ SDK plug-in that is designed for use on a Windows PC! (I’m sure there should be a simple download somewhere – but its eluded me.) A rather untidy solution is to install qt_install.sis (which adds Open C/C++, but errors when trying to install the Qt components) and then qt_selfsigned.sis (for the Qt stuff). The result: Lucian’s demo application running on a Samsung i8910.

Qt Calculatro example on a Samsung i8910

It’s unclear if Remote Compiler is a short term solution, as Symbian is working on a version of its tools for Linux and Mac, or will be included in the Qt SDK long term. Regardless, it does mean that if you use Mac or Linux you can now created and run Qt apps on your Symbian device.

You can find more information on running Remote Compiler in the Forum Nokia wiki article How to install and use the Nokia Qt SDK Remote Compiler.