分类: LINUX
2014-03-10 17:34:43
方法一:下载 安装包qvfb-1.1.tar.gz (在CSDN的资源里就有)
解压缩,开启我们的安装之路。
安装三步曲:
1、configure
遇到的第一个问题就是:configure: error: C++ preprocessor "/lib/cpp" fails sanity check
这个比较简单,解决方案是:sudo apt-get install build-essential
第二个问题就比较棘手了。那就是:Can't find X includes. Please check your installation and add the correct paths!
网上的说法是安装xlibs-dev就可以了,但是在unbuntu 的包资源搜索中都没找到这个包。
众人拾材火焰高啊,网络的力量真强大,让我还是找到的解决方法,那就是用xorg-dev代替xlibs-dev
sudo apt-get install xorg-dev
接着就会遇到第三个问题:Qt (>= Qt 3.0.3) (headers and libraries) not found. Please check your installation!
原因是找不到qt的安装头文件和库
这个也比较好解决:sudo apt-get install libqt3-headers libqt3-mt-dev
我们再次./configure
但是发现问题还是没有解决完,错误提示仍然是Qt (>= Qt 3.0.3) (headers and libraries) not found. Please check your installation!
这是为什么呢,原来我们没有指定头文件和库的路径。
我们进入/usr/lib/,发现有一个子文件夹qt3(sudo apt-get install qt4-dev-tools)
SO!!
./configure --prefix=/usr/ --with-qt-dir=/usr/lib/qt3/ --with-qt-includes=/usr/include/qt3 --with-qt-libraries=/usr/lib/qt/
2、make
3、make install
大功告成啦~~~感谢天,感谢地啊!!感谢网络的力量啊!!
/*追加 qvfb的命令选项
[-width width] the width of the virtual framebuffer (default: 240).
[-height height] the height of the virtual framebuffer (default: 320).
[-depth depth] the depth of the virtual framebuffer (1,4,8 or 32, default: 8).
[-nocursor] do not display the X11 cursor in the framebuffer window.
[-qwsdisplay] the Qt/Embedded display ID, e.g. -qwsdisplay :1 (default :0).
[-skin skinfile] tells qvfb to load a skin file, e.g. -skin pda.skin
*/
make的过程中出现一个典型错误:qvfb.cpp:51:24: error: deviceskin.h: No such file or directory
原因参见:
但是它所说的对于一个新手来说看起来可能还是费劲的,我再通俗地解释一下:
这个问题仍然是环境变量设置的问题,因为QT_SOURCE_TREE的设置使得make的时候找不到deviceskin.h。
在qvfb.pro这个文件里,可用QtCreator打开查看
第37行#include($[[QT_SOURCE_TREE]]/tools/shared/deviceskin/deviceskin.pri)
解决方法参见:
2、步骤是
1)首先定位到文件夹:qtenv/qtsdk/
2) 将QT_SOURCE_TREE的目录设置到我们当前的目录上,这个变量qvfb.pro要用到,执行命令
6)最后测试qvfb
若出现窗口(可能是黑屏)则表示qvfb安装成功;若想使用qvfb则运行 ./app -qws -qvfb指令即可,app为生成的可执行文件。
其中工程文件app.pro由qmake生成makefile,再运行make生成可执行文件app,然后运行 qvfb -width 800 -height 600 & 最后运行./app -qvfb -qws即可执行。
如果在一些文件的make过程中出现错误则再根据错误提示解决即可,一般是缺乏安装文件。
方法二:在源码包qt-x11-opensource-src-X.X.X/tools/qvfb中有qvfb的源码,只需在编译qt-everywhere-4.7.1(PC)是configure 带上-qvfb,再在qt-x11-opensource-src-X.X.X/tools/qvfb下编译qvfb即可。
具体步骤可参照如下:
那么就需要设置一下该变量QT_SOURCE_TREE