我使用./configure命令生成一个makefile。我的编译器是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的工具链/ 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是否设置$(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+++++++没有 检查/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+++++++没有 检查/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/Desktop/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 ..没有 检查/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++-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 ++编译器是否正常工作...没有 configure:error:in' / home / tl / Desktop / mvux_camera / demo / sampli_save_demo': configure:错误: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 =臂-FSL-Linux的gnueabi-GCC COLLECT_LTO_WRAPPER = /家庭/ TL /桌面/选择/ Embedsky / GCC-4.6.2-的glibc-2.13-Linaro的-multilib的2011.12 / TQ-Linaro的工具链/ bin中/../的libexec / GCC / ARM-FSL-Linux的gnueabi / 4.6.2 / LTO-包装 目标: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 ='飞思卡尔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 / build / .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(预发布)(飞思卡尔MAD - Linaro 2011.07 - 建于2011/08/10 09:20)
答案 0 :(得分:1)
查看./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
系统。因此,当您想./configure
时
使用该交叉编译器的项目HOST
= arm-fsl-linux-gnueabi