从qtsoftware.com上下载下来的sdk包,并没有将qvfb直接编译进去。
如果在qtsdk-2009.01/qt/tools/qvfb执行qmake,然后make的话,会提示
qvfb.cpp:51:24: error: deviceskin.h: No such file or directory qvfb.cpp:261: error: ‘DeviceSkinParameters’ was not declared in this scopeq vfb.cpp:261: error: expected `;' before ‘parameters’ qvfb.cpp:263: error: ‘parameters’ was not declared in this scope
原因就在于DeviceSkin的代码没有被加入编译qvfb的工程
31 qvfbprotocol.cpp 32 qvfbshmem.cpp 33 qvfbmmap.cpp 34 qlock.cpp 35 qwssignalhandler.cpp 36 37 #include($QT_SOURCE_TREE/tools/shared/deviceskin/deviceskin.pri) 38 include(/home/bug/qtsdk-2009.01/qt/tools/shared/deviceskin/deviceskin.pri) 39 40 contains(QT_CONFIG, opengl) {
将37行的代码改成38行的样子就可以了,或者你将$QT_SOURCE_TREE的变量设置好了也可以