2013-01-18 27 views
0

我正在嘗試爲pandaboard(OMAP4,4430)編譯嵌入Qt。 我安裝了ARMv7的這個交叉編譯器:編譯Qt嵌入式pandaboard時出錯:[.moc/release-shared-emb-arm/moc_qabstractanimation.cpp]錯誤1

sudo apt-get install g++-4.6-arm-linux-gnueabihf 

我下載最後QT嵌入式源文件夾中uncopressed他們:

/opt/qt-everywhere-opensource-src-4.6.4

我複製的配置文件:

cp -r mkspecs/qws/linux-arm-gnueabi-g++ mkspecs/qws/linux-arm-gnueabihf-g++ 

和我改性mkspecs/QWS/Linux的臂gnueabihf-G ++/qmake.conf如下:

include(../../common/g++.conf) 
include(../../common/linux.conf) 
include(../../common/qws.conf) 

#Compiler Flags to take advantage of the ARM architecture 
#N.B.:I also tried to uncomment the two following instructions with no success 
QMAKE_CFLAGS = -march=armv7-a -mtune=cortex-a8 -mfpu=neon -mfloat-abi=softfp 
QMAKE_CXXFLAGS = -march=armv7-a -mtune=cortex-a8 -mfpu=neon -mfloat-abi=softfp 

# modifications to g++.conf 
QMAKE_CC    = arm-linux-gnueabihf-gcc-4.6 
QMAKE_CXX    = arm-linux-gnueabihf-g++-4.6 
QMAKE_LINK    = arm-linux-gnueabihf-g++-4.6 
QMAKE_LINK_SHLIB  = arm-linux-gnueabihf-g++-4.6 

# modifications to linux.conf 
QMAKE_AR    = arm-linux-gnueabihf-ar cqs 
QMAKE_OBJCOPY   = arm-linux-gnueabihf-objcopy 
QMAKE_STRIP    = arm-linux-gnueabihf-strip 

load(qt_config) 

我拼命地跑的配置:

./configure -embedded arm -little-endian -no-qt3support -nomake examples -nomake demos -opensource -confirm-license -xplatform qws/linux-arm-gnueabihf-g++ 

當然但是,編譯與make命令失敗:

make[1]: Entering directory `/opt/qt-everywhere-opensource-src-4.6.4/src/corelib' 
/opt/qt-everywhere-opensource-src-4.6.4/bin/moc -DQT_SHARED -DQT_BUILD_CORE_LIB -DQT_NO_USING_NAMESPACE -DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT_MOC_COMPAT -DHB_EXPORT=Q_CORE_EXPORT -DQT_NO_DEBUG -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -I../../mkspecs/qws/linux-arm-gnueabihf-g++ -I. -I../../include -I../../include/QtCore -I.rcc/release-shared-emb-arm -Iglobal -I../3rdparty/zlib -I../3rdparty/harfbuzz/src -I../3rdparty/md5 -I../3rdparty/md4 -I.moc/release-shared-emb-arm animation/qabstractanimation.h -o .moc/release-shared-emb-arm/moc_qabstractanimation.cpp 
moc: Cannot create .moc/release-shared-emb-arm/moc_qabstractanimation.cpp 
make[1]: *** [.moc/release-shared-emb-arm/moc_qabstractanimation.cpp] Error 1 
make[1]: Leaving directory `/opt/qt-everywhere-opensource-src-4.6.4/src/corelib' 
make: *** [sub-corelib-make_default-ordered] Error 2 

有什麼不對?

+0

文件權限? – auselen

回答

0

做它作爲「根」。 好像你沒有文件創建權限。

+0

對不起,我找到了答案,我已經注意到要發佈它。該問題與不正確的moc安裝有關。我已經考慮過所有的「根」特權。 Hawever感謝你的支持。 – aldo85ita

0

對不起,我找到了答案,我已經注意到要發佈它。該問題與不正確的moc安裝有關。我已經證明了所有「根」特權。感謝大家你的支持

+0

嗨aldo85ita,我試圖爲Panda交叉編譯,但沒辦法,我按照你的步驟,但./configure退出白色錯誤「你沒有明確要求使用pkg-config並且正在交叉編譯。 pkg-config will不能用於自動查詢依賴關係的cflag/lib參數,無法檢測到主機系統字節順序!「。可以給我一個更詳細的解釋或鏈接,我可以看到一步一步的指示。謝謝。我已經做了一個新的問題http://stackoverflow.com/questions/19059596/cross-compiling-qt-for-pandaboard?noredirect=1#comment28173913_19059596 – HMarioD