tracker0.9.8以及libqttracker的配置编译
转载时请注明出处和作者联系方式 一 配置编译tracker-0.9.8 我使用的版本是tracker-0.9.8,我的配置脚本是(安装在了/usr目录): ./configure --prefix=/usr --enable-taglib --enable-gcov --enable-unit-tests --enable-gstreamer-tagreadbin --enable-gdkpixbuf --enable-video-extractor=gstreamer --enable-gstreamer-helix --enable-gnome-keyring --enable-network-manager --enable-miner-evolution --enable-tracker-status-icon --enable-tracker-explorer --enable-tracker-search-bar --enable-tracker-search-tool --enable-tracker-preferences --enable-poppler --enable-libexif --enable-libiptcdata --enable-libgsf --enable-libgif --enable-libjpeg --enable-libtiff --enable-libvorbis --enable-libflac --enable-exempi --enable-playlist --enable-nautilus-extension --enable-maemo 此配置脚本的目的是让tracker尽量支持更多的特性,请根据各自的配置结果,安装依赖文件,然后重新配置,直到配置通过为止。 这样得到的配置结果如下: Build Configuration: 二 libqttracker的配置编译 前提:我的PC上,tracker安装在了/usr目录,Qt-4.7安装在了/usr/local/Trolltech/Qt-4.7.0目录(ubuntu10.04,系统自带的qt,是4.6版本的) 1. 从git://gitorious.org/maemo-af/libqttracker.git下载最新的qttracker代码。 2. 进入目录libqttracker,打开文件projects.pro,搜索其中的SUBDIRS字段,修改成如下形式: #SUBDIRS = src tests SUBDIRS = src 3. 我的Qt-4.7被安装在了/usr/local/Trolltech/Qt-4.7.0目录,我希望qttracker使用qt-4.7库,并且安装到/usr/local/Trolltech/Qt-Tracker目录,所以,执行如下命令: QTDIR=/usr/local/Trolltech/Qt-4.7.0/ /usr/local/Trolltech/Qt-4.7.0/bin/qmake PREFIX=/usr/local/Trolltech/Qt-Tracker 4. 执行make。 make执行完后,进入lib目录,执行ldd libqttracker.so,如果结果类似于如下: linux-gate.so.1 > (0x00729000) libuuid.so.1 > /lib/libuuid.so.1 (0x0082d000) libQtDBus.so.4 => /usr/local/Trolltech/Qt-4.7.0/lib/libQtDBus.so.4 (0x00ea6000) libQtXml.so.4 => /usr/local/Trolltech/Qt-4.7.0/lib/libQtXml.so.4 (0x00110000) libQtCore.so.4 => /usr/local/Trolltech/Qt-4.7.0/lib/libQtCore.so.4 (0x0027d000) libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0x0021d000) libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00524000) libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0x00239000) libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00155000) libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0x00832000) /lib/ld-linux.so.2 (0x00260000) libz.so.1 => /lib/libz.so.1 (0x00e1a000) libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0x00fe4000) libgthread-2.0.so.0 => /usr/lib/libgthread-2.0.so.0 (0x00174000) librt.so.1 => /lib/tls/i686/cmov/librt.so.1 (0x0017a000) libglib-2.0.so.0 => /lib/libglib-2.0.so.0 (0x0061a000) libpcre.so.3 => /lib/libpcre.so.3 (0x00183000) libqttracker.so链接的qt库的路径是/usr/local/Trolltech/Qt-4.7.0/lib/libQtDBus.so.4,如果是这样的情况,则说明正确链接到qt-4.7版本了。 5. 执行make doc,可以生成文档。 6. 执行sudo make install。 执行此命令,会遇到这样的错误描述:make: [install_install_doc] 错误 1 (忽略) 可以忽略这个,然后检查一下/usr/local/Trolltech/Qt-Tracker目录,只要有qttracker的头文件和库就行了。 /////////////////////////////////////////////////////////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////////////// 7. 在代码中使用libqttracker库。使用libqttracker源码路径里面的example目录来进行说明。 7.1 执行ls,可以看到example里面有3个子文件夹: fengjian@fengjian-ubuntu :~/my-work/base-lib/tracker/code-example/examples$ ls contacts email examples.pro queries 7.2 进入每个子目录,分别编辑每个子目录里面的工程文件,搜索其中的LIBS字段,修改成如下形式: #LIBS = -lqttracker INCLUDEPATH + /usr/local/Trolltech/Qt-Tracker/include LIBS + -L/usr/local/Trolltech/Qt-Tracker/lib -lqttracker QMAKE_LFLAGS += -Wl,-rpath,/usr/local/Trolltech/Qt-Tracker/lib 在example目录里执行QTDIR=/usr/local/Trolltech/Qt-4.7.0/ /usr/local/Trolltech/Qt-4.7.0/bin/qmake 然后执行make。 这样的话,在每个子目录里面,就可以看到编译出来的对应的可执行文件了。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |