linux qt3编译出错,解决QT-4.4.3编译qvfb的问题

在虚拟机上安装QT开发环境真是一件郁闷的事情。遇到的第一个问题就是虚拟盘空间不够,编译后1G多。这些天折腾完总算挺过来了。

先下载qt-embedded-4.4.3,安装完后发现没有qvfb,原来qvfb只在qt/X11中有,没办法,再下载qt/X11-4.4.3来编译。编译完了发现根本在qt-x11-opensource-src-4.4.3/bin/下面哪里有 qvfb???根本没有。

在qt-x11-opensource-src-4.4.3/tools/下面有qvfb文件夹。而qt-x11-opensource-src-4.4.3/tools/下的Makefile根本没有包含qvfb文件夹的编译。

编译结束后我尝试的步骤如下: (着急的直接看最后几行!!)

1.进入qvfb源码目录:

# cd /home/src/qt-x11-opensource-src-4.4.3/tools/qvfb

2.执行qmake生成pro工程:

# /home/src/qt-x11-opensource-src-4.4.3/bin/qmake -project

3.执行qmake生成Makefile

# /home/src/qt-x11-opensource-src-4.4.3/bin/qmake

4.编译make

# make

有错误:

g++ -c -pipe -g -O2 -Wall -W -D_REENTRANT -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I../../mkspecs/linux-g++ -I. -I../../include/QtCore -I../../include/QtCore -I../../include/QtGui -I../../include/QtGui -I../../include -I. -I.moc/release-shared -I.uic/release-shared -o .obj/release-shared/qvfb.o qvfb.cpp

qvfb.cpp:47:24: 错误:deviceskin.h:没有那个文件或目录

qvfb.cpp: In member function ‘void QVFb::init(int, int, int, int, int, const QString&)’:

qvfb.cpp:247: 警告:检测到调用 delete 运算符时可能出现的问题:

qvfb.cpp:247: 警告:invalid use of undefined type ‘struct DeviceSkin’

qvfb.h:53: 警告:forward declaration of ‘struct DeviceSkin’

qvfb.cpp:247: 附注:析构函数和类特定的 delete 运算符均不会被调用,即使它们在类定义时已经声明。

qvfb.cpp:257: 错误:‘DeviceSkinParameters’ 在此作用域中尚未声明

qvfb.cpp:257: 错误:expected `;'' before ‘parameters’

qvfb.cpp:259: 错误:‘parameters’ 在此作用域中尚未声明

qvfb.cpp:259: 错误:‘DeviceSkinParameters’ is not a class or namespace

qvfb.cpp:260: 错误:invalid use of undefined type ‘struct DeviceSkin’

qvfb.h:53: 错误:forward declaration of ‘struct DeviceSkin’

qvfb.cpp:261: 错误:对 ‘QVFb::connect(DeviceSkin*&, const char [13], QVFb* const, const char [13])’ 的调用没有匹配的函数

../../include/QtCore/../../src/corelib/kernel/qobject.h:197: 附注:备选为: static bool QObject::connect(const QObject*, const char*, const QObject*, const char*, Qt::ConnectionType)

../../include/QtCore/../../src/corelib/kernel/qobject.h:302: 附注:         bool QObject::connect(const QObject*, const char*, const char*, Qt::ConnectionType) const

qvfb.cpp:277: 错误:对 ‘QVFbX11View::QVFbX11View(int&, int&, int&, int&, QVFbAbstractView::Rotation&, DeviceSkin*&)’ 的调用没有匹配的函数

qvfbx11view.h:52: 附注:备选为: QVFbX11View::QVFbX11View(int, int, int, int, QVFbAbstractView::Rotation, QWidget*)

qvfbx11view.h:49: 附注:         QVFbX11View::QVFbX11View(const QVFbX11View&)

qvfb.cpp:280: 错误:对 ‘QVFbView::QVFbView(int&, int&, int&, int&, QVFbAbstractView::Rotation&, DeviceSkin*&)’ 的调用没有匹配的函数

qvfbview.h:109: 附注:备选为: QVFbView::QVFbView(int, int, int, int, QVFbAbstractView::Rotation, QWidget*)

qvfbview.h:106: 附注:         QVFbView::QVFbView(const QVFbView&)

qvfb.cpp:281: 错误:invalid use of undefined type ‘struct DeviceSkin’

qvfb.h:53: 错误:forward declaration of ‘struct DeviceSkin’

qvfb.cpp:284: 错误:对 ‘QVFb::connect(DeviceSkin*&, const char [37], QVFbAbstractView*&, const char [37])’ 的调用没有匹配的函数

../../include/QtCore/../../src/corelib/kernel/qobject.h:197: 附注:备选为: static bool QObject::connect(const QObject*, const char*, const QObject*, const char*, Qt::ConnectionType)

../../include/QtCore/../../src/corelib/kernel/qobject.h:302: 附注:         bool QObject::connect(const QObject*, const char*, const char*, Qt::ConnectionType) const

qvfb.cpp:285: 错误:对 ‘QVFb::connect(DeviceSkin*&, const char [39], QVFbAbstractView*&, const char [39])’ 的调用没有匹配的函数

../../include/QtCore/../../src/corelib/kernel/qobject.h:197: 附注:备选为: static bool QObject::connect(const QObject*, const char*, const QObject*, const char*, Qt::ConnectionType)

../../include/QtCore/../../src/corelib/kernel/qobject.h:302: 附注:         bool QObject::connect(const QObject*, const char*, const char*, Qt::ConnectionType) const

qvfb.cpp:287: 错误:invalid use of undefined type ‘struct DeviceSkin’

qvfb.h:53: 错误:forward declaration of ‘struct DeviceSkin’

qvfb.cpp:289: 错误:对 ‘QVFb::setCentralWidget(DeviceSkin*&)’ 的调用没有匹配的函数

../../include/QtGui/../../src/gui/widgets/qmainwindow.h:116: 附注:备选为: void QMainWindow::setCentralWidget(QWidget*)

qvfb.cpp:302: 错误:对 ‘QVFbX11View::QVFbX11View(int, int, int, int&, QVFbAbstractView::Rotation&, DeviceSkin*&)’ 的调用没有匹配的函数

qvfbx11view.h:52: 附注:备选为: QVFbX11View::QVFbX11View(int, int, int, int, QVFbAbstractView::Rotation, QWidget*)

qvfbx11view.h:49: 附注:         QVFbX11View::QVFbX11View(const QVFbX11View&)

qvfb.cpp:305: 错误:对 ‘QVFbView::QVFbView(int, int, int, int&, QVFbAbstractView::Rotation&, DeviceSkin*&)’ 的调用没有匹配的函数

qvfbview.h:109: 附注:备选为: QVFbView::QVFbView(int, int, int, int, QVFbAbstractView::Rotation, QWidget*)

qvfbview.h:106: 附注:         QVFbView::QVFbView(const QVFbView&)

qvfb.cpp:306: 错误:invalid use of undefined type ‘struct DeviceSkin’

qvfb.h:53: 错误:forward declaration of ‘struct DeviceSkin’

qvfb.cpp: In member function ‘void QVFb::enableCursor(bool)’:

qvfb.cpp:379: 错误:invalid use of undefined type ‘struct DeviceSkin’

qvfb.h:53: 错误:forward declaration of ‘struct DeviceSkin’

qvfb.cpp: In member function ‘void QVFb::setZoom(double)’:

qvfb.cpp:453: 错误:invalid use of undefined type ‘struct DeviceSkin’

qvfb.h:53: 错误:forward declaration of ‘struct DeviceSkin’

qvfb.cpp: In member function ‘void QVFb::skinConfigChosen(int)’:

qvfb.cpp:771: 错误:‘DeviceSkinParameters’ 在此作用域中尚未声明

qvfb.cpp:771: 错误:expected `;'' before ‘parameters’

qvfb.cpp:773: 错误:‘parameters’ 在此作用域中尚未声明

qvfb.cpp:773: 错误:‘DeviceSkinParameters’ is not a class or namespace

make: *** [.obj/release-shared/qvfb.o] 错误 10b1331709591d260c1c78e86d0c51c18.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值