我用的是虚拟机完全安装的REDHAT 9 ,装的是QT2,编译器是2.95.3,
装的是qt_x86版的qt 2,自己编的的应用程序正常编译通过,但交叉编译是出现如下错误:
/armsys2410/qtx86/qt/lib/libqte.so:could not read symbols :invalid operation
是什么原因啊,我的交叉编译是这样的:
设置好环境变量,我用echo 来查看环境变量,echo $TMAKEPATH ,如果返回的不是.../qws/linux-arm-g++ 的字符的话,从新设置, export TMAKEPATH=/tmake 的安装路径/qws/linux-arm-g++ ,同时QTDIR一定得要指定QTE的安装路径,设置过程如下: export QTDIR=...../qt2 以上环境设置好后,我使用tmake来生成Makefile,是用tmake,而不是用qmake(注意),tmake工具在tmake包里面。 具体做法,我在命令行下打: tmake -o Makefile 工程名.pro 这样我就新生成了一个Makefile文件,下一步,要打开这个文件,做一些小的修改 1: 将LINK=arm-linux-gcc 改为:LINK=arm-linux-g++ 2:将LIBS=$(SUBLIBS) -L$(QTDIR)/lib -lm -lqte这句话改为: LIBS=$(SUBLIBS) -L/usr/local/arm/2.95.3/lib -L$(QTDIR)/lib -lm -lqte 加上我的交叉编译的库。。。最后make