2011-12-03 34 views
1

我正在嘗試編譯嵌入ARM的Qt。我遵循herehere的說明。我正在使用最新的Angstrom工具鏈和qt-embedded-linux-opensource-src-4.5.3,我使用的是Ubuntu 10.10 x86。爲Beagleboard編譯Qt嵌入時出錯(ARM)

下面步驟我過去:

  • 配置QWS/Linux的臂-G ++/qmake.conf我的工具鏈文件。在這裏它的內容:

    # 
    # qmake configuration for building with arm-linux-g++ 
    # 
    
    include(../../common/g++.conf) 
    include(../../common/linux.conf) 
    include(../../common/qws.conf) 
    
    # modifications to g++.conf 
    QMAKE_CC    = arm-angstrom-linux-gnueabi-gcc 
    QMAKE_CXX    = arm-angstrom-linux-gnueabi-g++ 
    QMAKE_LINK    = arm-angstrom-linux-gnueabi-g++ 
    QMAKE_LINK_SHLIB  = arm-angstrom-linux-gnueabi-g++ 
    
    # modifications to linux.conf 
    QMAKE_AR    = arm-angstrom-linux-gnueabi-ar cqs 
    QMAKE_OBJCOPY   = arm-angstrom-linux-gnueabi-objcopy 
    QMAKE_STRIP    = arm-angstrom-linux-gnueabi-strip 
    
    load(qt_config) 
    
  • 設置我的工具鏈路徑:

    export PATH=/home/olcay/angstrom/arm/bin:$PATH 
    
  • 配置QT有:

    ./configure -arch arm -little-endian -xplatform qws/linux-arm-g++ 
    
  • 運行make。

雖然運行make我收到此錯誤:

make[1]: Entering directory `/home/olcay/qt-embedded/src/corelib' 
arm-angstrom-linux-gnueabi-g++ -c -pipe -fno-exceptions -O2 -Wall -W -D_REENTRANT -fPIC -DQT_SHARED -DQT_BUILD_CORE_LIB -DQT_NO_USING_NAMESPACE -DQT_NO_CAST_TO_ASCII -DQT_ASCII_CAST_WARNINGS -DQT3_SUPPORT -DQT_MOC_COMPAT -DHB_EXPORT=Q_CORE_EXPORT -DQT_NO_DEBUG -I../../mkspecs/qws/linux-arm-g++ -I. -I../../include -I../../include/QtCore -I.rcc/release-shared-emb-arm -Iglobal -I../3rdparty/zlib -I../3rdparty/harfbuzz/src -I.moc/release-shared-emb-arm -o .obj/release-shared-emb-arm/qatomic_arm.o arch/arm/qatomic_arm.cpp 
/home/olcay/angstrom/arm/bin/arm-angstrom-linux-gnueabi-g++: 1: ELF: not found 
/home/olcay/angstrom/arm/bin/arm-angstrom-linux-gnueabi-g++: 2: Syntax error: word unexpected (expecting ")") 
make[1]: *** [.obj/release-shared-emb-arm/qatomic_arm.o] Error 2 
make[1]: Leaving directory `/home/olcay/qt-embedded/src/corelib' 
make: *** [sub-corelib-make_default-ordered] Error 2 

我也注意到,雖然配置有在化妝警告,同樣的錯誤行:

The system floating point format could not be detected. 
    This may cause data to be generated in a wrong format 
    Turn on verbose messaging (-v) to see the final report. 
    /home/olcay/angstrom/arm/bin/arm-angstrom-linux-gnueabi-g++: 1: ELF: not found 
    /home/olcay/angstrom/arm/bin/arm-angstrom-linux-gnueabi-g++: 2: Syntax error: word unexpected (expecting ")") 

和更改將行描述爲@Luca Carlon描述並不能解決問題。

請幫幫我! 在此先感謝。

回答

1

我注意到我已經下載了64位主機平臺的Angstrom工具鏈,但我使用的是32位主機。下載正確的工具鏈後,我設法編譯Qt。我發現當你嘗試運行一個不適合你的架構的應用程序時,會出現「ELF not found」錯誤。

0

用-embedded arm替換-arch arm,如果想要構建Qt Embedded,請再試一次。