标题:交叉编译qt2.3.10遇到的问题
作者:lemon
日期:2006-07-02 10:26
内容:
遇到一个很奇怪的问题,交叉编译qt2.3.10.配置如下:
./configure -xplatform linux-arm-g++ -system-jpeg -no-xft -qconfig qpe -no-qvfb -depths 4,8,16,32
编译过程显示一些warnging,但是编译完成了。编译完./lib下只有libqte的链接文件,却没有库文件。怎么回事?根本没有生成qt库文件。交叉编译器用的是2.95.3
#1 [cavendish 07-02 18:46]
建议贴出整个编译log
肯定是编译错误没有编译出libqte
#2 [haoqianga 04-17 10:44]
同问:
我也遇到问题了,错误提示如下,但是生成了相关的.so文件,只不过最后在开发板上运行我自己的程序时也遇到了类似的错误,导致无法运行。
网上搜了下,也有人遇到类似问题:
h t t p : / / w w w . q t c n . o r g / b b s/ r ea d . p h p ? t i d = 5 5 7 8
错误也和我的一样:
======================================================================
…………
…………
cd tutorial; make
make[2]: Entering directory `/root/dev/qt-2.3.10-target/tutorial'
make t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14
make[3]: Entering directory `/root/dev/qt-2.3.10-target/tutorial'
if [ -d t1 ]; then cd t1 ; make; fi
make[4]: Entering directory `/root/dev/qt-2.3.10-target/tutorial/t1'
arm-linux-g++ -c -I/root/dev/qt-2.3.10-target/include -pipe -DQWS -fno-exceptions -fno-rtti -O2 -Wall -W -DNO_DEBUG -o main.o main.cpp
arm-linux-gcc -L/root/dev/qt-2.3.10-target/lib -Wl,-rpath,/root/dev/qt-2.3.10-target/lib-o ./t1 main.o-lqte -lm
/root/dev/qt-2.3.10-target/lib/libqte.so: undefined reference to `operator new[](unsigned)'
/root/dev/qt-2.3.10-target/lib/libqte.so: undefined reference to `operator delete(void*)'
/root/dev/qt-2.3.10-target/lib/libqte.so: undefined reference to `__cxa_pure_virtual'
/root/dev/qt-2.3.10-target/lib/libqte.so: undefined reference to `operator delete[](void*)'
/root/dev/qt-2.3.10-target/lib/libqte.so: undefined reference to `operator new(unsigned)'
collect2: ld returned 1 exit status
make[4]: *** Error 1
make[4]: Leaving directory `/root/dev/qt-2.3.10-target/tutorial/t1'
make[3]: *** Error 2
make[3]: Leaving directory `/root/dev/qt-2.3.10-target/tutorial'
make[2]: *** Error 2
make[2]: Leaving directory `/root/dev/qt-2.3.10-target/tutorial'
make[1]: *** Error 2
make[1]: Leaving directory `/root/dev/qt-2.3.10-target'
make: *** Error 2
======================================================================
有人回复解决方法为:
“
我也有这个错误,我的解决办法是不make tutorial 目录, ..
#3 [haoqianga 04-17 13:10]
指导书上告诉我们,这个问题无所谓,实际上因为后来也遇到类似错误,觉得应该没那么简单,应该搞清楚,但………………
#4 [goodbay 04-18 08:58]
在学校的时候听老师说,安装QT要装VC6.0,要不会产生些错误
#5 [rooney 07-17 10:35]
其实也就是链接问题
c++的程序用gcc链接,肯定会错误的。
修改相应目录的Makefile的 LINK 的 gcc 为 g++ 或者 arm-linux-gcc => arm-linux-g++就能链接成功了。
对于怎样改整个配置文件我就不知道了,我的是傻办法,哪里出现错误改那个Makefile。
1楼出现的问题我也遇到过,应该是编译器的问题,之前我用3.4.1编译了无数次都跟1楼的结果一样,
后来用了3.3.2后就没有了这个问题。
引用第2楼haoqianga于2008-04-17 10:44发表的:
同问:
我也遇到问题了,错误提示如下,但是生成了相关的.so文件,只不过最后在开发板上运行我自己的程序时也遇到了类似的错误,导致无法运行。
网上搜了下,也有人遇到类似问题:
h t t p : / / w w w . q t c n . o r g / b b s/ r ea d . p h p ? t i d = 5 5 7 8
错误也和我的一样:
.......