昨天,在实验室做实训项目中的实验,对应用程序gsm进行交叉编译(用qt-embedded-3.3.0,tmake-1.11)时,当执行到make命令时,提示如下:
/usr/bin/ld:skipping incompatible /home/qt-embedded-3.3.0/lib/libqte.so when searching for -lqte /usr/bin/ld:can not find -lqte collect2:ld returned 1 exit status make:***[gsm] Error 1
通过观察对比,发现生成的Makefile文件中有个问题,就是编译器环境问题,生成的Makefile文件中
CC = gcc CXX = g++
LINK = g++
于是我就修改Makefile文件
修改:CC = arm-linux-gcc CXX = arm-linux-g++
LINK = arm-linux-g++
然后重新make,结果通过了。
不过这我也怪了,为什么这个交叉编译生成的Makefile文件的编译器会是gcc,而不是arm-linux-gcc 和 arm-linux-g++呢。可能是机房实验室的Qt交叉编译环境设置错误。 |