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 */