Tuesday, December 29, 2009

Installing Qt Mobility Libraries on Ubuntu

It's time for me to jump into Qt Mobility development. Yaay!

Here's my steps to prepare Qt Mobility development. I'm using Ubuntu 9.10 Karmic Koala.
  1. Make sure you have installed Qt 4.6.
  2. Install checkinstall package if you haven't.
  3. Install network-manager-dev package. This will be used by the Bearer API and System Information API.
  4. Install libgstreamer0.10-dev package. This will be used by the Multimedia API implementation.
  5. Download Qt Mobility library sources.
  6. Unpack the Qt Mobility distribution to a folder.
  7. Open a terminal on that folder.
  8. Set the PATH to Qt 4.6.x libraries:

    $ export PATH=/opt/qtsdk-2010.01/qt/bin:$PATH
    
  9. Set PKG_CONFIG_PATH:

    $ export PKG_CONFIG_PATH=/usr/lib/pkgconfig
    
  10. Run:

    $ ./configure

$ ./configure 
Configuring Qt Mobility

Checking available Qt ... 4.6.0
Checking QMF ... Not Found
Checking NetworkManager ... OK
Checking CoreWLAN (MacOS 10.6) ... Not Found
Generating Mobility Headers...
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QNetworkConfiguration
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QNetworkConfigurationManager
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QNetworkSession
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QValueSpaceSubscriber
Create header /opt/qt-mobility-src-1.0.0-tp2/include/SymbianSettingsLayer
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QValueSpacePublisher
Create header /opt/qt-mobility-src-1.0.0-tp2/include/PathMapper
Create header /opt/qt-mobility-src-1.0.0-tp2/include/PathData
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QNmeaPositionInfoSource
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QGeoPositionInfo
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QGeoSatelliteInfoSource
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QGeoCoordinate
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QGeoSatelliteInfo
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QGeoPositionInfoSource
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QGeoAreaMonitor
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QServiceContext
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QServiceManager
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QServicePluginInterface
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QAbstractSecuritySession
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QServiceInterfaceDescriptor
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QServiceFilter
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QSystemInfo
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QSystemNetworkInfo
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QSystemDisplayInfo
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QSystemStorageInfo
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QSystemDeviceInfo
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QSystemScreenSaver
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QContactDetailDefinition
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QContactFilter
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QContactDetailDefinitionField
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QContactChangeSet
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QContactAbstractRequest
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QContactActionFactory
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QContactManagerEngine
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QContactAction
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QContactDetail
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QContactId
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QContactActionDescriptor
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QContact
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QContactRelationship
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QContactSortOrder
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QContactManager
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QContactManagerEngineFactory
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QMediaPlaylistProvider
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QVideoOutputControl
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QMetaDataControl
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QMediaControl
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QLocalMediaPlaylistProvider
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QMediaRecorderControl
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QMediaImageViewer
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QMediaPlaylistReader
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QMediaPlaylistWriter
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QMediaPlaylistIOPlugin
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QVideoEncoderControl
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QMediaStreamsControl
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QMediaService
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QMediaPlaylistControl
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QMediaPlayer
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QMediaPlaylistNavigator
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QGraphicsVideoItem
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QMediaServiceProviderHint
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QMediaServiceProvider
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QMediaRecorder
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QVideoRendererControl
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QAudioDeviceControl
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QAudioEncoderControl
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QRadioTunerControl
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QVideoDeviceControl
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QAudioEncoderSettings
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QVideoEncoderSettings
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QImageEncoderSettings
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QMediaResource
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QMediaPlaylist
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QMediaPlayerControl
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QVideoWidget
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QMediaServiceProviderPlugin
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QVideoWindowControl
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QImageEncoderControl
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QVideoWidgetControl
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QMediaFormatControl
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QRadioTuner
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QAudioCaptureSource
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QMediaObject
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QAudioFormat
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QMediaContent
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QMessageFolderFilter
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QMessageFilter
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QMessageFolderOrdering
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QMessageFolder
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QMessageId
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QMessageContentContainer
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QMessageStore
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QMessageAccountOrdering
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QMessage
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QMessageAddress
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QMessageServiceAction
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QMessageFolderId
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QMessageContentContainerId
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QMessageAccountFilter
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QMessageOrdering
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QMessageAccountId
Create header /opt/qt-mobility-src-1.0.0-tp2/include/QMessageAccount
Running qmake...
Reading /opt/qt-mobility-src-1.0.0-tp2/src/src.pro
 Reading /opt/qt-mobility-src-1.0.0-tp2/src/global/global.pro
 Reading /opt/qt-mobility-src-1.0.0-tp2/src/serviceframework/serviceframework.pro
 Reading /opt/qt-mobility-src-1.0.0-tp2/src/bearer/bearer.pro
Project MESSAGE: NetworkManager backend requires Qt DBus support
 Reading /opt/qt-mobility-src-1.0.0-tp2/src/location/location.pro
 Reading /opt/qt-mobility-src-1.0.0-tp2/src/contacts/contacts.pro
 Reading /opt/qt-mobility-src-1.0.0-tp2/src/multimedia/multimedia.pro
 Reading /opt/qt-mobility-src-1.0.0-tp2/src/publishsubscribe/publishsubscribe.pro
 Reading /opt/qt-mobility-src-1.0.0-tp2/src/versit/versit.pro
 Reading /opt/qt-mobility-src-1.0.0-tp2/src/systeminfo/systeminfo.pro
Reading /opt/qt-mobility-src-1.0.0-tp2/tools/tools.pro
 Reading /opt/qt-mobility-src-1.0.0-tp2/tools/servicefw/servicefw.pro
 Reading /opt/qt-mobility-src-1.0.0-tp2/tools/servicexmlgen/servicexmlgen.pro
 Reading /opt/qt-mobility-src-1.0.0-tp2/tools/vsexplorer/vsexplorer.pro
 Reading /opt/qt-mobility-src-1.0.0-tp2/tools/qcrmlgen/qcrmlgen.pro
Reading /opt/qt-mobility-src-1.0.0-tp2/plugins/plugins.pro
 Reading /opt/qt-mobility-src-1.0.0-tp2/plugins/contacts/contacts.pro
 Reading /opt/qt-mobility-src-1.0.0-tp2/plugins/multimedia/multimedia.pro
Package gstreamer-interfaces-0.10 was not found in the pkg-config search path.
Perhaps you should add the directory containing `gstreamer-interfaces-0.10.pc'
to the PKG_CONFIG_PATH environment variable
No package 'gstreamer-interfaces-0.10' found
Package gstreamer-audio-0.10 was not found in the pkg-config search path.
Perhaps you should add the directory containing `gstreamer-audio-0.10.pc'
to the PKG_CONFIG_PATH environment variable
No package 'gstreamer-audio-0.10' found
Package gstreamer-video-0.10 was not found in the pkg-config search path.
Perhaps you should add the directory containing `gstreamer-video-0.10.pc'
to the PKG_CONFIG_PATH environment variable
No package 'gstreamer-video-0.10' found
  Reading /opt/qt-mobility-src-1.0.0-tp2/plugins/multimedia/m3u/m3u.pro
  Reading /opt/qt-mobility-src-1.0.0-tp2/plugins/multimedia/audiocapture/audiocapture.pro
  Reading /opt/qt-mobility-src-1.0.0-tp2/plugins/multimedia/v4l/v4l.pro
Reading /opt/qt-mobility-src-1.0.0-tp2/doc/doc.pro
 Reading /opt/qt-mobility-src-1.0.0-tp2/doc/src/snippets/snippets.pro
  Reading /opt/qt-mobility-src-1.0.0-tp2/doc/src/snippets/qtcontactsdocsample/qtcontactsdocsample.pro

configure has finished. You may run make or gmake to build the project now.
  1. Run: sudo checkinstall
    If you can't or don't want to use checkinstall, do:


    $ make
    $ make install
    


  2. Be very patient (again!)
I'm having unexpected unpleasant surprise here, the build stops early with an error:

g++ -c -pipe -g -fvisibility=hidden -fvisibility-inlines-hidden -Wall -W -D_REENTRANT -fPIC -DQT_BUILD_CFW_LIB -DQT_MAKEDLL -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/local/Trolltech/Qt-4.6.0/mkspecs/linux-g++ -I. -I/usr/local/Trolltech/Qt-4.6.0/include/QtCore -I/usr/local/Trolltech/Qt-4.6.0/include/QtNetwork -I/usr/local/Trolltech/Qt-4.6.0/include -I../global -I../../build/Debug/QtPublishSubscribe/moc -o ../../build/Debug/QtPublishSubscribe/qmallocpool.o qmallocpool.cpp
In file included from qmallocpool.cpp:64:
dlmalloc.c: In function ‘void QtMobility::dlmalloc_stats()’:
dlmalloc.c:4725: error: cannot convert ‘QtMobility::_IO_FILE*’ to ‘FILE*’ for argument ‘1’ to ‘int QtMobility::fprintf(FILE*, const char*, ...)’
dlmalloc.c:4727: error: cannot convert ‘QtMobility::_IO_FILE*’ to ‘FILE*’ for argument ‘1’ to ‘int QtMobility::fprintf(FILE*, const char*, ...)’
dlmalloc.c:4729: error: cannot convert ‘QtMobility::_IO_FILE*’ to ‘FILE*’ for argument ‘1’ to ‘int QtMobility::fprintf(FILE*, const char*, ...)’
make[2]: *** [../../build/Debug/QtPublishSubscribe/qmallocpool.o] Error 1
make[2]: Leaving directory `/opt/qt-mobility-src-1.0.0-tp2/src/publishsubscribe'
make[1]: *** [sub-publishsubscribe-make_default] Error 2
make[1]: Leaving directory `/opt/qt-mobility-src-1.0.0-tp2/src'
make: *** [sub-src-make_default-ordered] Error 2 

This is a known Qt Mobility bug with GCC 4.4, which Ubuntu 9.10 uses by default.

To solve this problem, install gcc-4.3 package and g++-4.3 package. Update the symlinks too:

$ sudo ln -sf gcc-4.3 /usr/bin/gcc
$ sudo ln -sf g++-4.3 /usr/bin/g++

Update: Even with GCC / G++ 4.3, I still experience yet another problem:

g++ -c -pipe -g -fvisibility=hidden -fvisibility-inlines-hidden -Wall -W -D_REENTRANT -fPIC -DQT_BUILD_SYSINFO_LIB -DQT_MAKEDLL -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/local/Trolltech/Qt-4.6.0/mkspecs/linux-g++ -I. -I/usr/local/Trolltech/Qt-4.6.0/include/QtCore -I/usr/local/Trolltech/Qt-4.6.0/include/QtNetwork -I/usr/local/Trolltech/Qt-4.6.0/include/QtGui -I/usr/local/Trolltech/Qt-4.6.0/include -I../global -I../../build/Debug/QtSystemInfo/moc -o ../../build/Debug/QtSystemInfo/qsysteminfo_linux.o qsysteminfo_linux.cpp
qsysteminfo_linux.cpp: In member function ‘void QtMobility::QSystemStorageInfoPrivate::mountEntries()’:
qsysteminfo_linux.cpp:1370: warning: comparison between signed and unsigned integer expressions
In file included from qsysteminfo_linux.cpp:2073:
../../build/Debug/QtSystemInfo/moc/moc_qsysteminfo_linux_p.cpp: In member function ‘bool QtMobility::QSystemScreenSaverPrivate::isScreenSaverActive()’:
../../build/Debug/QtSystemInfo/moc/moc_qsysteminfo_linux_p.cpp:47: error: invalid use of qualified-name ‘QtMobility::QSystemInfoPrivate::staticMetaObject’
../../build/Debug/QtSystemInfo/moc/moc_qsysteminfo_linux_p.cpp:57: error: a function-definition is not allowed here before ‘{’ token
../../build/Debug/QtSystemInfo/moc/moc_qsysteminfo_linux_p.cpp:62: error: a function-definition is not allowed here before ‘{’ token
../../build/Debug/QtSystemInfo/moc/moc_qsysteminfo_linux_p.cpp:70: error: a function-definition is not allowed here before ‘{’ token
qsysteminfo_linux.cpp:2075: error: expected `}' at end of input
qsysteminfo_linux.cpp: At global scope:
qsysteminfo_linux.cpp:2075: error: expected `}' at end of input
make[2]: *** [../../build/Debug/QtSystemInfo/qsysteminfo_linux.o] Error 1
make[2]: Leaving directory `/opt/qt-mobility-src-1.0.0-tp2/src/systeminfo'
make[1]: *** [sub-systeminfo-install_subtargets] Error 2
make[1]: Leaving directory `/opt/qt-mobility-src-1.0.0-tp2/src'
make: *** [sub-src-install_subtargets-ordered] Error 2 

I reported this to Qt as bug QTMOBILITY-46. Hopefully it gets resolved soon, or a workaround is provided.

Update: I got word from Lorn Potter from Nokia/TrollTech/Qt. To patch it, run:

patch src/systeminfo/qsysteminfo_linux.cpp

then paste in:

diff --git a/src/systeminfo/qsysteminfo_linux.cpp
b/src/systeminfo/qsysteminfo_linux.cpp
index f795c4f..e0d1a4b 100644
--- a/src/systeminfo/qsysteminfo_linux.cpp
+++ b/src/systeminfo/qsysteminfo_linux.cpp
@@ -2065,8 +2065,8 @@ bool QSystemScreenSaverPrivate::isScreenSaverActive()
                 return reply.value();
             }
         }
-    }
 #endif
+    }
     return false;
 }

and press Ctrl+D.

After doing the above, I have successfully compiled Qt Mobility 1.0 TP2. Yaay!

Now you should add add /opt/qt-mobility-src-1.0.0-tp2/lib folder to your LD_LIBRARY_PATH environment variable.

To add Qt Mobility documentation in Qt Creator: Go to Tools -> Options -> Help -> Add. Then browse /opt/qt-mobility-src-1.0.0-tp2/doc/qch/qtmobility.qch.

See also:

9 comments:

  1. For me the patch doesnt seem to work. I still have the same error. With the patch - do I still have to switch to gcc 4.3?

    ReplyDelete
  2. Hi,

    Yes you still need to switch to GCC 4.3. The patch fixes an error with the source, not incompatibility with GCC 4.4 (which remains).

    ReplyDelete
  3. Hi, I'm trying to install qt mobility beta1 on ubuntu 9.1 (running inside VMware player) by following the steps you mentioned. But I'm getting the following error message when I run 'sudo make install'

    ../../build/Debug/QtMedia/qmediacontrol.o: could not read symbols: File in wrong format
    collect2: ld returned 1 exit status
    make[2]: *** [../../lib/libQtMedia.so.1.0.0] Error 1
    make[2]: Leaving directory `/home/maemo/qt-mobility-src-1.0.0-beta1/src/multimedia'
    make[1]: *** [sub-multimedia-install_subtargets] Error 2
    make[1]: Leaving directory `/home/maemo/qt-mobility-src-1.0.0-beta1/src'
    make: *** [sub-src-install_subtargets-ordered] Error 2

    Any suggestion will be a big help for me. Thanks in advance.

    ReplyDelete
  4. Hi, Hendy,
    Thanks a lot! Your website is quite helpful!! :)
    I'm wondering if you have tried the new QT mobility release, qt-mobility-opensource-src-1.0.0. There are many compiling errors such as "'ptrdiff_t' does not name a type" while including /QTCore/qlist.h during compiling.
    Anyway, thanks a lot for your kind sharing. :)

    ReplyDelete
  5. Anonymous:

    Thank you for your praise. I'm glad my website is helpful for you.

    I had no problems with Qt Mobility 1.0.0.
    Qt Mobility 1.0.1 is released, please check the newest version. (I haven't yet installed the 1.0.1 hehe..)

    ReplyDelete
  6. Hi,, Thanks for the great post..
    I am using the nokia qt sdk for developing apps in mac10.6 .. Could you please explain how to install mobile API in the mac. I tried but I got the errors .Please help me.. Thanks in advance

    ReplyDelete
  7. make[2]: *** [../../build/Debug/QtMultimediaKit/qaudiodevicefactory.o] Error 1
    make[2]: Leaving directory `/home/samba/qtsdk-2010.05/qt/qt-mobility/src/multimedia'
    make[1]: *** [sub-multimedia-install_subtargets] Error 2
    make[1]: Leaving directory `/home/samba/qtsdk-2010.05/qt/qt-mobility/src'
    make: *** [sub-src-install_subtargets-ordered] Error 2


    Help pretty please :) Im strugling whole day to set up the mobility pack, please help..its kinda urgent.

    ps. Thank you for your work, i wouldnt make so far without it. :)

    ReplyDelete
  8. @Sam : Please use the latest Nokia Qt SDK.
    See http://qt-mobility.blogspot.com/2010/11/compiling-qt-symbian-s60-applications.html

    BTW I've never tried to develop advanced Qt Mobility apps *for* Ubuntu, just *on* Ubuntu but *for* mobile platforms, that is S60...

    ReplyDelete
  9. I am getting the following error


    configure has finished. You may run make or gmake to build the project now.

    QT_MOBILITY_PREFIX = /home/satyam/qt-mobility-opensource-src-1.2.0/install
    QT_MOBILITY_INCLUDE = /home/satyam/qt-mobility-opensource-src-1.2.0/install/include
    QT_MOBILITY_LIB = /home/satyam/qt-mobility-opensource-src-1.2.0/install/lib
    QT_MOBILITY_BIN = /home/satyam/qt-mobility-opensource-src-1.2.0/install/bin
    QT_MOBILITY_PLUGINS = /home/satyam/qt-mobility-opensource-src-1.2.0/install/plugins
    QT_MOBILITY_EXAMPLES = /home/satyam/qt-mobility-opensource-src-1.2.0/install/bin
    QT_MOBILITY_DEMOS = /home/satyam/qt-mobility-opensource-src-1.2.0/install/bin
    root@bhr-pc0886:/home/satyam/qt-mobility-opensource-src-1.2.0# make
    cd src/ && make -f Makefile
    make[1]: Entering directory `/home/satyam/qt-mobility-opensource-src-1.2.0/src'
    cd global/ && make -f Makefile
    make[2]: Entering directory `/home/satyam/qt-mobility-opensource-src-1.2.0/src/global'
    make[2]: Nothing to be done for `first'.
    make[2]: Leaving directory `/home/satyam/qt-mobility-opensource-src-1.2.0/src/global'
    cd serviceframework/ && make -f Makefile
    make[2]: Entering directory `/home/satyam/qt-mobility-opensource-src-1.2.0/src/serviceframework'
    g++ -c -pipe -g -fvisibility=hidden -fvisibility-inlines-hidden -Wall -W -D_REENTRANT -fPIC -DQT_SHARED -DQTM_PLUGIN_PATH=\"/home/satyam/qt-mobility-opensource-src-1.2.0/install/plugins\" -DQT_BUILD_SFW_LIB -DQT_MAKEDLL -DQT_DBUS_LIB -DQT_SQL_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -I/home/satyam/QtSDK/Desktop/Qt/4.8.0/gcc/mkspecs/default -I. -I/home/satyam/QtSDK/Desktop/Qt/4.8.0/gcc/include/QtCore -I/home/satyam/QtSDK/Desktop/Qt/4.8.0/gcc/include/QtNetwork -I/home/satyam/QtSDK/Desktop/Qt/4.8.0/gcc/include/QtSql -I/home/satyam/QtSDK/Desktop/Qt/4.8.0/gcc/include/QtDBus -I/home/satyam/QtSDK/Desktop/Qt/4.8.0/gcc/include -I../global -Iipc -I. -I../../build/Debug/QtServiceFramework/moc -o ../../build/Debug/QtServiceFramework/qmetaobjectbuilder.o ipc/qmetaobjectbuilder.cpp
    ipc/qmetaobjectbuilder.cpp: In member function ‘void QtMobility::QMetaObjectBuilder::addMetaObject(const QMetaObject*, QFlags)’:
    ipc/qmetaobjectbuilder.cpp:803: error: invalid conversion from ‘void (*)(QObject*, QMetaObject::Call, int, void**)’ to ‘int (*)(QMetaObject::Call, int, void**)’
    ipc/qmetaobjectbuilder.cpp:803: error: initializing argument 1 of ‘void QtMobility::QMetaObjectBuilder::setStaticMetacallFunction(int (*)(QMetaObject::Call, int, void**))’
    ipc/qmetaobjectbuilder.cpp: In function ‘int QtMobility::buildMetaObject(QtMobility::QMetaObjectBuilderPrivate*, char*, bool)’:
    ipc/qmetaobjectbuilder.cpp:1430: error: invalid conversion from ‘int (*)(QMetaObject::Call, int, void**)’ to ‘void (*)(QObject*, QMetaObject::Call, int, void**)’
    make[2]: *** [../../build/Debug/QtServiceFramework/qmetaobjectbuilder.o] Error 1
    make[2]: Leaving directory `/home/satyam/qt-mobility-opensource-src-1.2.0/src/serviceframework'
    make[1]: *** [sub-serviceframework-make_default] Error 2
    make[1]: Leaving directory `/home/satyam/qt-mobility-opensource-src-1.2.0/src'
    make: *** [sub-src-make_default-ordered] Error 2
    root@bhr-pc0886:/home/satyam/qt-mobility-opensource-src-1.2.0#

    ReplyDelete

Be the first to comment!