QtE4.6.3使用arm-linux-gcc-3.4.1编译问题
只是个人在学习过程中遇到的问题,还望大家提供更多的错误及解决方法~
使用arm-linux-gcc-3.4.1编译qte4.6.3的时候执行make出现以下错误:
1>
QFontEngineFT::init(QFontEngine::FaceId, bool, QFontEngineFT::GlyphFormat)':
text/qfontengine_ft.cpp:696: warning: converting to `int' from `qreal'
{standard input}: Assembler messages:
{standard input}:781: Error: register or shift expression expected -- `orr r3,r2,lsl#16'
{standard input}:792: Error: register or shift expression expected -- `orr r2,r3,lsl#16'
{standard input}:7752: Error: register or shift expression expected -- `orr r3,r0,lsl#16'
{standard input}:7765: Error: register or shift expression expected -- `orr r1,r0,lsl#16'
make[1]: *** [.obj/release-shared-emb-arm/qfontengine_ft.o] 错误 1
make[1]:正在离开目录 `/usr/local/qt/qt-everywhere-opensource-src-4.6
苦思不得其解,最后还是上网查了查,发现解决方法为:
把~/qt-everywhere-opensource-src-4.6.0/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 */