簡體   English   中英

使用配置文件生成makefile

[英]Use configure file to generate makefile

我使用./configure命令生成一個生成文件。 我的編譯器是arm-fsl-linux-gnueabi toochain。 當我運行./configure時,出現以下問題:

tl @ tl-virtual-machine:〜/ Desktop / mvux_camera / demo / sampli_save_demo $ ./configure --host = / home / tl / Desktop / opt / Embedsky / gcc-4.6.2-glibc-2.13-linaro-multilib- 2011.12 / tq-linaro-toolchain / bin / arm-fsl-linux-gnueabi-g ++ configure:警告:如果要設置--build類型,請不要使用--host。 如果檢測到交叉編譯器,則將使用交叉編譯模式檢查與BSD兼容的安裝... / usr / bin / install -c檢查構建環境是否正常...是,檢查/ home / tl / Desktop / opt / Embedsky / gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12 / tq-linaro-toolchain / bin / arm-fsl-linux-gnueabi-g ++-strip ...不檢查剝離...剝離檢查線程安全的mkdir -p ... / bin / mkdir -p檢查gawk ...不檢查mawk ... mawk檢查是否make set $(MAKE)...是檢查/ home / tl /Desktop/opt/Embedsky/gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12/tq-linaro-toolchain/bin/arm-fsl-linux-gnueabi-g ++-g ++ ...不檢查/ home /tl/Desktop/opt/Embedsky/gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12/tq-linaro-toolchain/bin/arm-fsl-linux-gnueabi-g ++-c ++ ...不檢查/home/tl/Desktop/opt/Embedsky/gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12/tq-linaro-toolchain/bin/arm-fsl-linux-gnueabi-g ++-gpp ...否檢查/home/tl/Desktop/opt/Embedsky/gcc-4.6.2- glibc-2.13-linaro-multilib-2011.12 / tq-linaro-toolchain / bin / arm-fsl-linux-gnueabi-g ++-aCC ...不檢查/home/tl/Desktop/opt/Embedsky/gcc-4.6。 2-glibc-2.13-linaro-multilib-2011.12 / tq-linaro-toolchain / bin / arm-fsl-linux-gnueabi-g ++-CC ...不檢查/ home / tl / Desktop / opt / Embedsky / gcc- 4.6.2-glibc-2.13-linaro-multilib-2011.12 / tq-linaro-toolchain / bin / arm-fsl-linux-gnueabi-g ++-cxx ...不檢查/ home / tl / Desktop / opt / Embedsky / gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12 / tq-linaro-toolchain / bin / arm-fsl-linux-gnueabi-g ++-cc ++ ...不檢查/ home / tl / Desktop / opt / Embedsky / gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12 / tq-linaro-toolchain / bin / arm-fsl-linux-gnueabi-g ++-cl.exe ...不檢查/ home / tl /桌面/opt/Embedsky/gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12/tq-linaro-toolchain/bin/arm-fsl-linux-gnueabi-g ++-FCC ...不檢查/ home / tl / Desktop / opt / Embedsky / gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12 / tq-linaro-toolchain / bin / arm-fsl-linux-gnueabi-g ++-KCC ...不檢查/ 主頁/ tl /台式機/opt/Embedsky/gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12/tq-linaro-toolchain/bin/arm-fsl-linux-gnueabi-g ++-RCC ...沒有檢查對於/home/tl/Desktop/opt/Embedsky/gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12/tq-linaro-toolchain/bin/arm-fsl-linux-gnueabi-g ++-xlC_r ...無需檢查/home/tl/Desktop/opt/Embedsky/gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12/tq-linaro-toolchain/bin/arm-fsl-linux-gnueabi-g++-xlC。 ..不檢查g ++ ...不檢查c ++ ...不檢查gpp ...不檢查aCC ...不檢查CC ...不檢查cxx ...不檢查cc ++ .. 。不檢查cl.exe ...不檢查FCC ...不檢查KCC ...不檢查RCC ...不檢查xlC_r ...不檢查xlC ...不檢查C ++編譯器正常工作...沒有配置:錯誤:在'/ home / tl / Desktop / mvux_camera / demo / sampli_save_demo'中:配置:錯誤:C ++編譯器無法創建可執行文件有關更多詳細信息,請參見'config.log'

我的工具鏈是源代碼,當輸入arm-fsl-linux-gnueabi-gcc -v ,命令行顯示它有效。

tl @ tl-virtual-machine:〜/ Desktop / mvux_camera / demo / sampli_save_demo $ arm-fsl-linux-gnueabi-gcc -v使用內置規格。 COLLECT_GCC = arm-fsl-linux-gnueabi-gcc COLLECT_LTO_WRAPPER = / home / tl / Desktop / opt / Embedsky / gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12 / tq-linaro-toolchain / bin /。 /libexec/gcc/arm-fsl-linux-gnueabi/4.6.2/lto-wrapper目標:arm-fsl-linux-gnueabi配置為:/work/build/.build/src/gcc-linaro-4.6-2011.06- 0 / configure --build = i686-build_pc-linux-gnu --host = i686-build_pc-linux-gnu --target = arm-fsl-linux-gnueabi --prefix = / work / fsl-linaro-toolchain-2.13 --with-sysroot = / work / fsl-linaro-toolchain-2.13 / arm-fsl-linux-gnueabi / multi-libs --enable-languages = c,c ++ --with-pkgversion ='Freescale MAD-Linaro 2011.07 -建於2011/08/10 09:20'--enable -__ cxa_atexit --disable-libmudflap --disable-libgomp --disable-libssp --with-gmp = / work / build / .build / arm-fsl -linux-gnueabi / build / static --with-mpfr = / work / build / .build / arm-fsl-linux-gnueabi / build / static --with-mpc = / work / build / .build / arm-fsl -linux-gnueabi / build / static --with-ppl = / work / build / .build / arm-fsl-linux-gnueabi / build / static --with-cloog = / work / buil d / .build / arm-fsl-linux-gnueabi / build / static --with-libelf = / work / build / .build / arm-fsl-linux-gnueabi / build / static --with-host-libstdcxx =' -static-libgcc -Wl,-Bstatic,-lstdc ++,-Bdynamic -lm -L / work / build / .build / arm-fsl-linux-gnueabi / build / static / lib -lpwl'--enable-threads = posix --enable-target-optspace --enable-plugin --enable-multilib --with-local-prefix = / work / fsl-linaro-toolchain-2.13 / arm-fsl-linux-gnueabi / multi-libs --disable -nls --enable-c99 --enable-long-long --with-system-zlib線程模型:posix gcc版本4.6.2 20110630(預發行)(Freescale MAD-Linaro 2011.07-建於2011/08/10 09:20)

查看./configure --help的輸出,尤其是:

System types:
  --build=BUILD     configure for building on BUILD [guessed]
  --host=HOST       cross-compile to build programs to run on HOST [BUILD]

HOST應該是您要在其上運行交叉編譯程序的系統的標識。 但是,您已經將其設置為C ++編譯器的絕對文件名:

./configure --host=/home/tl/Desktop/opt/Embedsky/gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12/tq-linaro-toolchain/bin/arm-fsl-linux-gnueabi-g++

這會導致您的./configure腳本嘗試並無法找到具有以下廢話名稱的交叉編譯器:

/home/tl/Desktop/opt/Embedsky/gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12/tq-linaro-toolchain/bin/arm-fsl-linux-gnueabi-g++-g++
/home/tl/Desktop/opt/Embedsky/gcc-4.6.2-glibc-2.13-linaro-multilib-2011.12/tq-linaro-toolchain/bin/arm-fsl-linux-gnueabi-g++-c++

查看arm-fsl-linux-gnueabi-gcc -v ,特別是:

Target: arm-fsl-linux-gnueabi 

這告訴您交叉編譯器是為arm-fsl-linux-gnueabi系統的程序交叉編譯而構建的。 因此,當您要arm-fsl-linux-gnueabi ./configure一個項目以使用該交叉編譯器時, HOST = arm-fsl-linux-gnueabi

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM