QT Qvfb独立编译快速实现是本文要介绍的内容,不多说,先来看内容。在Qt-Embedded 4.4以后的版本发布中,host端的工具和target的工具分开来编译了。如果你要编译Qt-Embdedded的版本,则必须先有一个编译好的Qt-X11的版本。
编译Qt-X11是一个挺漫长的过程,而且也浪费空间。所以我们可以选择安装Linux发行版提供的已经编译好的二进制的版本。Qt开发环境的安装(ubuntu)介绍了这个安装过程。但遗憾的qt4的桌面包并没有提供编译好的qvfb版本,qvfb工具在qt3-dev-tools-embedde这个包里,而这个包依赖於Qt 3的库,我们没必要仅仅为了一个qvfb再去安装qt3的包。所以,我们需要自己编译qvfb。
当然你可以把整个qt-x11的代码包下载下来,重新configure -qvfb,这样当然能够编译成功,这不是我们想要的。我们只需要编译qvfb。 但是当你尝试常规的qmake ; make的时候发现没法编译成功。 该原因在QtCreator中编译qvfb失败的原因讨论过,现在发现不仅仅是QtCreator/SDK中的问题,在源码发布包qt-x11-opensource-src-4.5.1中是一样的,所以我们需要做点小小改动。
(1)我们可以把tools目录从qt-x11-opensource-src-4.5.1中单独拷贝出来,证明它不依赖于其他代码,执行命令
- $ qt-x11-opensource-src-4.5.1/tools/ . -r
(2)将QT_SOURCE_TREE的目录设置到我们当前的目录上,这个变量qvfb.pro要用到,执行命令
- $ qmake -set QT_SOURCE_TREE $PWD
(3)改动qvfb.pro中使用变量方式$$QT_SOURCE_TREE为$$[QT_SOURCE_TREE],执行命令为
- $ sed -i “s/QT_SOURCE_TREE/[QT_SOURCE_TREE]/g” tools/qvfb/qvfb.pro
(4)执行qmake,make编译,执行命令为
- $ cd tools/qvfb/;qmake;make;cd -
(5)最后qvfb编译成功,在./bin目录下
结论:在系统里已经安装好X11的情况下,只需要tools那个目录的代码就可以编译qvfb了。
来源地址:http://www.cuteqt.com/blog/?p=55
小结:关于QT Qvfb独立编译快速实现的内容到这里就介绍完了,希望本文能帮你解决问题。