Be aware that previous Qt Mobility installation will likely conflict with the new Qt Mobility library. I also had this problem, then gave up and reinstall my Symbian S60 SDK. :-P So, if you try and not succeed, before you begin, clean your system from:
- Qt Mobility
- Qt for Symbian
- Symbian S60 SDK
- Make sure to cleanly delete the directories of the above
Then reinstall Qt for Symbian development environment: (detailed instructions here)
- Reinstall Symbian S60 SDK.
- Reinstall Open C/C++ Plugin for Symbian S60 SDK.
- Reinstall Qt for Symbian.
Now you can unpack Qt Mobility for Symbian distribution to a folder and install it:
- Download Qt Mobility for Symbian here. The distribution file is named like this: qt-mobility-symbian-*.zip. Unpack it to a folder.
- Install to Symbian SDK. Installing the mobility libraries to your Symbian SDK happens by extracting the 'qt-mobility-1.0.0-beta1-libraries<S60SDK>.zip' file to your Symbian SDK.
- Install Qt Mobility to Qt SDK. Copy the mobility.prf file to your QtDIR/mkspecs/features directory
- Optional: Install to Nokia/Symbian S60 device. Install qt-mobility-1.0.0-beta1.sis to your device using Bluetooth, USB, or Nokia Ovi Suite / PC Suite.
To learn more about Symbian development, I recommend Porting to the Symbian Platform: Open Mobile Development in C/C++ (Symbian Press).
Thanks for the great tutorials, however i am not able to get Qt mobility to work, firstly when i tried extracting to on top of the S60 SDK what happened was it overwrote all the other folders inside the SDK so i basically broke it, might want to mention that in the tutorial =) secondly i am a bit confused as to where the mobility.prf file can be found, after unpacking qt-mobility-src-1.0.0-beta1\features only contains mobility.prf.template and deploy.pri, a video tutorial would be nice.
ReplyDeleteI did the install and Qt-Mobility works on the S60 emulator but on the phone the programs will not start.
ReplyDeleteHow do I fix this?
Is it a shared library path problem?
James, I think you should install both the Qt and Qt Mobility SIS files on your phone.
ReplyDeleteThen, make sure you've properly set the Symbian capabilities in your .pro file.
Zeddy:
ReplyDeleteFirst, you need to unpack the PROPER file at the PROPER folder.
For Symbian, you DON'T get the qt-mobility-src-.........tar.gz/zip but instead the qt-mobility-symbian-......zip. Notice the "symbian" part. So make sure you download the proper file first.
Inside that file you'll find several more files and zip files. There is a zip file that you can unpack to the S60 SDK (please notice the correct target folder, that is the folder that contains "epoc32"). And also mobility.prf that you can copy to the Qt for Symbian (not S60 SDK) features folder.
For more exact instructions, refer to README.txt that accompanies the qt-mobility-symbian...zip file.
Thanks Hendy, that worked, but now I have another problem.
ReplyDeleteI tried adding QMessageStore object to the Qt-Mobility querymessages example but I get link errors. The Messaging API seems to be missing something. I didn't build these binaries myself.
There are no gcce release libs anywhere under epoc32. They are not in the zipped file.
Can you help me with this?
Do you have the libs for gcce release in your Qt-Mobility zip file or did you build them yourself?
Jim
James:
ReplyDeleteHave you copied the mobility.prf ?
Can you confirm that other Mobility (say, Qt Mobility Contacts) work?
Have you added
CONFIG += mobility
MOBILITY += messaging
to your .pro?
I ran the logfileposition example on the N97-mini, that worked fine. The messaging example querymessages won't compile when I try to use QMessageStore::instance() and some other members of the class. I get link errors saying that the function QMessageStore::instance() is not defined.
ReplyDeleteHere are the errors:
"\S60\devices\S60_5th_Edition_SDK_v1.0\EPOC32\BUILD\Symbian\Carbide\workspace\PhoneApp\PHONEAPP_0XE85CB282\GCCE\PHONEAPP_0XE85CB282.GCCE" UREL
\S60\devices\S60_5th_Edition_SDK_v1.0\EPOC32\BUILD\Symbian\Carbide\workspace\PhoneApp\PHONEAPP_0XE85CB282\GCCE\urel\PhoneApp.o: In function `PhoneApp::PhoneApp(QWidget*)':
phoneapp.cpp:(.text+0x5e): undefined reference to `QtMobility::QMessageStore::instance()'
\S60\devices\S60_5th_Edition_SDK_v1.0\EPOC32\BUILD\Symbian\Carbide\workspace\PhoneApp\PHONEAPP_0XE85CB282\GCCE\urel\PhoneApp.o: In function `PhoneApp::PhoneApp(QWidget*)':
phoneapp.cpp:(.text+0x116): undefined reference to `QtMobility::QMessageStore::instance()'
make[1]: *** [\S60\devices\S60_5th_Edition_SDK_v1.0\epoc32\release\gcce\urel\PhoneApp.exe] Error 1
make: *** [TARGETPHONEAPP_0XE85CB282] Error 2
Have you copied the mobility.prf ?
ReplyDeleteYes
>>Can you confirm that other Mobility (say, Qt Mobility Contacts) work?
Yes but not qmlcontacts
>> Have you added
>>CONFIG += mobility
>>MOBILITY += messaging
>>to your .pro?
Yes
I can compile some of the others and run them on the phone but messaging seems to missing definitions in the lib.
Jim
Hi,
ReplyDeleteI resolved this problem. QMessageStore appears to be a back-end class that's not part of the public interface of the Messaging API. QMessageManager delegates the functionality of QMessageStore. The examples I was looking at used QMessageStore directly. I guess they're using an old version of Qt-Mobility.
Jim
In addition to this, it's best to do a reinstall if you build the SDKs yourself and decide to use the prepackaged binaries instead. The Qt-Mobility package with the _tp suffix is another version. If you build _tp libs and then install the prepacked binaries you'll pollute your SDK's includes directories with header files from different Qt-Mobility versions.
ReplyDeleteThe main thing here is that QMessageStore was designed as a private class, only to be used in the implementation of the Qt-Mobility Messaging API.
Thanks for all of the comments.
Jim
Qt Mobility SDK have missing library! There isn't library for example QtMessaging.dll!
ReplyDeleteI'v install the Noki Mobile SDK with qt mobility 1.0 and i can't acces to the
ReplyDeleteAnybody have an ideea ?
Mas Hendy maaf ngeprotin,
ReplyDeleteaku butoh penjelasan kok bisa Qt bluetooth lib run ama nokia Qt sdk?
@anonymous: Maaf saya belum pernah pakai bluetooth di Qt.
ReplyDeleteHow do I update Rollup2 for xp media center Edition 2005 in order to install windows player 11 on my comp?
ReplyDeletewhenever i start nokia s60 sdk it gives me an error like this
ReplyDelete"Symbian OS Fatal Error
An error has been detected in the Sysmbian OS Emulator
program EKern.exe::Supervisor
Error Exception::268435456"
Every time I install ATI mobility radeon, I get an ati2dvag error message when I restart the computer?
ReplyDeleteWhat hurdle mobility drills can I do without hurdles, or exercises that have the same effect?
ReplyDeleteHow to make voip calls on a Symbian 9 S60 V3 Nokia phone using a vpn on a broadband connection?
ReplyDeletejust linked this article on my facebook account. it’s a very interesting article for all.
ReplyDeleteSymbian Application Development