QT/E 4.5.0 For Embedded Linux 的 bug

在尝试裁减Qt/E 4.5.0 for Embedded Linux时,作者遇到了三个编译错误。第一个错误涉及-QT_NO_TABLETEVENT宏,已通过修改代码解决。第二个错误在webkit模块的qt_instance.h文件,因QScriptEngine未被声明。作者检查配置命令和头文件,但未能找到原因。提供了已修复的源代码,但仅适用于Qt 4.5.0 for Embedded Linux,且尚未进行链接和运行验证。
摘要由CSDN通过智能技术生成

这两天在研究 Qt/E 4.5 的系统裁减的问题,不知道是Qt官方做的测试不够,还是自己还没有完全搞明白,目前发现了几个小问题,自己Fix了两个,还有一个,始终搞不明白。

首先,在做配置的时候做出选择,我需要使用哪些QT的模块,我做出的配置如下:
./configure -fast -no-qt3support -no-feature-PROPERTIES -no-feature-TEXTODFWRITER -no-feature-CSSPARSER   -no-feature-DRAGANDDROP   -no-feature-SESSIONMANAGER   -no-feature-SHORTCUT   -no-feature-CURSOR  -no-feature-STL   -no-feature-STACKEDWIDGET   -no-feature-MDIAREA -no-feature-CLIPBOARD   -no-feature-EFFECTS   -no-feature-PROCESS   -no-feature-QUUID_STRING   -no-feature-FILESYSTEMMODEL   -no-feature-TREEWIDGET   -no-feature-TABBAR -no-feature-TABLETEVENT

然后执行make命令 ,编译的结果是出现了三个bug。

第一个bug是关于 -no-feature-TABLETEVENT 的,代码的错误出现在 application.cpp 文件中,大约在 3604 行,原code如下:

  1. #if !defined(QT_NO_WHEELEVENT) || !defined(QT_NO_TABLETEVENT)
  2.         else if (
  3. #  ifndef QT_NO_WHEELEVENT
  4.                  e->type() == QEvent::Wheel ||
  5. #  endif
  6. #  ifndef QT_NO_TABLETEVENT
  7.                  e->type() == QEvent::TabletMove
  8.                  || e->type() == QEvent::TabletPress
  9.                  || e->type() == QEvent::TabletRelease
  10. #  endif
  11.         ) {
复制代码

错误信息是这样的:
86-g++ -I. -I../../include/QtCore -I../../include/QtNetwork -I../../include -I../../include/QtGui -I.rcc/release-shared-emb-x86 -I/usr/include/freetype2 -I../3rdparty/harfbuzz/src -Idialogs -I.moc/release-shared-emb-x86 -I.uic/release-shared-emb-x86 -o .obj/release-shared-emb-x86/qapplication.o kernel/qapplication.cpp
kernel/qapplication.cpp: In member function ‘virtual bool QApplication::notify(QObject*, QEvent*)’:
kernel/qapplication.cpp:3604: error: expected primary-expression before ‘)’ token
make[1]:

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值