2012-10-11 50 views
4

我已经下载了CPP单元测试框架并尝试编译Android。但是,面对配置问题。我试图使Standalone tool chain也试过配置,但其始终未能configure:error:配置Android时,C编译器无法创建可执行文件

sh-4.1$ ./configure CXX=arm-linux-androideabi-g++ CC=arm-linux-androideabi-gcc CPP=arm-linux-androideabi-g++ CXXCPP=arm-linux-androideabi-g++ 
checking for a BSD-compatible install... /usr/bin/install -c 
checking whether build environment is sane... yes 
checking for a thread-safe mkdir -p... /usr/bin/mkdir -p 
checking for gawk... gawk 
checking whether make sets $(MAKE)... yes 
checking whether make sets $(MAKE)... (cached) yes 
checking for a BSD-compatible install... /usr/bin/install -c 
checking for gcc... arm-linux-androideabi-gcc 
checking for C compiler default output file name... 
configure: error: C compiler cannot create executables 
See `config.log' for more details. 
sh-4.1$ arm-linux-androideabi-g++ 
arm-linux-androideabi-g++.exe: fatal error: no input files 
compilation terminated. 
sh-4.1$ 

我的编译环境是NDKr8,Cygwin的,Windows7的-64。

我试图通过的config.log去,并发现该错误是

arm-linux-androideabi-gcc.exe: error: CreateProcess: No such file or directory 

我尝试了通过减少路径长度等固定上述错误。但仍然无法解决。请让我知道是否有人解决了类似的问题。

只是添加链接信息http://curl.haxx.se/mail/lib-2012-08/0184.html 但面临与Cygwin出问题相同的问题。

D:\Test>arm-linux-androideabi-gcc Main.c 
arm-linux-androideabi-gcc: error: CreateProcess: No such file or directory 

D:\Test> 

即使在windows提示符下你也是如此观察者,它也是同样的问题。

-----编辑----- 1我 配置试图在Ubuntu 12.04操作系统与下面的线

./configure --host=arm CXX=arm-linux-androideabi-g++ CC=arm-linux-androideabi-gcc CPP=arm-linux-androideabi-g++ CXXCPP=arm-linux-androideabi-g++ 

但是,让这些错误

大部分
checking how to run the C preprocessor... arm-linux-androideabi-g++ 
configure: error: in `/mnt/hgfs/VMShare/gperftools-2.0_Android/gperftools-2.0': 
configure: error: C preprocessor "arm-linux-androideabi-g++" fails sanity check 
See `config.log' for more details. 

但ARM android Gcc编译器的时代正在失败。

configure:4216: arm-linux-androideabi-gcc -qversion >&5 
arm-linux-androideabi-gcc: error: unrecognized option '-qversion' 
arm-linux-androideabi-gcc: fatal error: no input files 
+2

“详情参见 '的config.log'”。这是您应该查看的日志文件。 – Mat

+0

@Mat:我只看到config.log文件。这是一个错字:)。谢谢,我现在改为Config.log在上面的味精中。 – Suman

+0

从技术上讲,** ./configure **脚本是正确的:您的交叉编译器无法创建可在Windows(或桌面Linux)上运行的可执行文件。有时,** ./configure **可以被_configured_理解,您正在使用交叉编译器,并且不打算在执行构建的相同环境中启动二进制文件。但我不确定单元测试框架可以用于这种情况。要分析特定情况,如果您发布要尝试构建的项目(URL,版本等将会有所帮助),这可能很有用。 –

回答

0

我没有与特定的设置经验,但是当我得到这个错误,我加入海湾合作委员会的bin文件夹添加到系统路径固定它,另外,必须有每个可执行文件的版本在gcc的bin目录中没有前缀(例如g ++。exe,ld.exe ...)。这解决了我的问题。我在更改路径后也登出/打开,但不知道是否有必要。

我来到这里的想法: http://forums.codeblocks.org/index.php?topic=18100.0

1

给正确的路径和环境。

示例设置:

export NDK=/develop/android/android-ndk-r9b 
export SYSROOT=$NDK/platforms/android-18/arch-x86 
export CC="$NDK/toolchains/x86-4.7/prebuilt/linux-x86/bin/i686-linux-android-gcc --sysroot=$SYSROOT" 

export CFLAGS="--sysroot=$SYSROOT " 
export LDFLAGS="--sysroot=$SYSROOT " 
相关问题