arm-linux-gcc 4.1.1 编译 QT 4.7 for ARM 中的错误


1.Error: register or shift expression expected -- `orr r0,r2,lsl#16'

这是一个BUG,可以在http://bugreports.qt.nokia.com/browse/QTBUG-6521查看

要解决此错误,在编译的目录下的src/3rdparty/freetype/include/freetype/config/ftconfig.h的第330行

"orr %0, %2, lsl #16\n\t" /* %0 |= %2 << 16 */
改为 "orr %0,%0, %2, lsl #16\n\t" /* %0 |= %2 << 16 */

2. Not supported ARM architecture

在./configure 时加入 -D__ARM_ARCH_5TEJ__

3.undefined reference to 'ts_read_raw'

修改qt 编译目录下的 mkspecs/qws/linux-arm-g++/qmake.conf 文件(添加lts参数):
QMAKE_CC                = arm-linux-gcc -lts
QMAKE_CXX               = arm-linux-g++ -lts
QMAKE_LINK              = arm-linux-g++ -lts
QMAKE_LINK_SHLIB        = arm-linux-g++ -lts

相关内容