Qt/QTE 编译安装问题与解决方法

在编译Qt/Embedded 2.3.2时遇到了多个错误,包括QValueStack的类型转换错误、QWSInputMethod声明问题、库文件缺失问题及NFS挂载问题。解决方法包括编辑qvaluestack.h文件,修复remove方法调用,添加QWSInputMethod声明,安装兼容的libstdc++.so.5库,并调整NFS挂载选项。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


编译Qt/Embedded

编译过程出现错误:

error 1


/root/2410clQt/qt-2.3.2/include/qvaluestack.h:57: 错误:不能将‘int remove(const char*)’的实参‘1’从‘QValueListIterator<QMap<QString, QString> >’转换到‘const char*’
/root/2410clQt/qt-2.3.2/include/qvaluestack.h: In member function ‘T QValueStack<T>::pop() [with T = QString]’:
xml/qxml.cpp:2502:   instantiated from here
/root/2410clQt/qt-2.3.2/include/qvaluestack.h:57: 错误:不能将‘int remove(const char*)’的实参‘1’从‘QValueListIterator<QString>’转换到‘const char*’
make[2]: *** [xml/qxml.o] 错误 1
make[2]: Leaving directory `/root/2410clQt/qt-2.3.2/src'
make[1]: *** [sub-src] 错误 2
make[1]: Leaving directory `/root/2410clQt/qt-2.3.2'
make: *** [init] 错误 2


solving :

gedit $QTDIR/include/qvaluestack.h &

将remove( this->fromLast() );改为this->remove( this->fromLast() );





error2: ‘QWSInputMethod’ has not been declared

修正方法:

cd $QTDIR/src/kernel //$DTDIR=/home/opiehome/qt-2.3.10

gedit qwindowsystem_qws.h

在前面增加以下两行

class QWSInputMethod;

class QWSGestureMethod;






error:
kernel/qpixmapcache.cpp:125:57: 错误:asm/page.h:没有那个文件或目录
In file included from kernel/qgfx_qws.h:39,
                 from kernel/qpixmapcache.cpp:112:
kernel/qimage.h: In member function ‘int QImageTextKeyLang::operator<(const QImageTextKeyLang&) const’:
kernel/qimage.h:58: 警告:建议在 || 的操作数中出现的 && 前后加上括号
kernel/qpixmapcache.cpp: In constructor ‘QSharedMemoryManager::QSharedMemoryManager()’:
kernel/qpixmapcache.cpp:539: 错误:‘PAGE_SIZE’在此作用域中尚未声明
kernel/qpixmapcache.cpp:539: 错误:‘PAGE_MASK’在此作用域中尚未声明
kernel/qpixmapcache.cpp: In member function ‘void QSharedMemoryManager::internal_free(QSMemPtr)’:
kernel/qpixmapcache.cpp:773: 错误:‘PAGE_SIZE’在此作用域中尚未声明
kernel/qpixmapcache.cpp:773: 错误:‘PAGE_M
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值