2012-01-20 2 views
4

나는 안드로이드 NDK 독립 컴파일러 툴체인 뭔가를 구축하기 위해 노력하고있어,하지만 난이 오류를 받고 있어요는 :'구성은'

Updating bundled third-party dependencies... 

bash -c 'mkdir -p output/{debug,release,test}/{FCollada/{FCDocument,FMath,FUtils,FColladaTest/{FCTestAssetManagement,FCTestExportImport,FCTestXRef}},FColladaPlugins/FArchiveXML}' 
cp output/libFColladaSD.a ../lib/libFColladaSD.a 
cp output/libFColladaSR.a ../lib/libFColladaSR.a 

Building SpiderMonkey... 

SpiderMonkey build options: --disable-tests   
loading cache ./config.cache 
checking host system type... x86_64-unknown-linux-gnu 
checking target system type... x86_64-unknown-linux-gnu 
checking build system type... x86_64-unknown-linux-gnu 
checking for mawk... mawk 
checking for perl5... no 
checking for perl... /usr/bin/perl 
checking for gcc... gcc 
checking whether the C compiler (gcc ) works... yes 
checking whether the C compiler (gcc ) is a cross-compiler... no 
checking whether we are using GNU C... yes 
checking whether gcc accepts -g... yes 
checking for c++... arm-linux-androideabi-g++ 
checking whether the C++ compiler (arm-linux-androideabi-g++ ) works... no 
configure: error: installation or configuration problem: C++ compiler cannot create executables. 
ERROR: SpiderMonkey build failed 

이것은 config.log의 말씀입니다 : http://pastebin.com/5AFZG4CX

[email protected]:~/android/0ad/build/workspaces$ echo $ANDROID_NDK_ROOT 
/home/afeder/android/android-ndk-r7-crystax-4 

어떤 원인이 될 수도 있고 내가 그것을 어떻게 디버깅 할 다음과 같이

ANDROID_NDK_ROOT가 설정되어 내? 고맙습니다.

+0

'무슨 말을 config.log' 않습니다

지금 당신은 당신이 크로스 컴파일하는 그 SpiderMonkey를 configure 말할 필요? 업로드 할 수 있습니까? –

+0

이것은 config.log가 말하는 것입니다 : http://pastebin.com/5AFZG4CX –

답변

10

가 깨진 같습니다

여기
checking host system type... x86_64-unknown-linux-gnu 
checking target system type... x86_64-unknown-linux-gnu 
checking build system type... x86_64-unknown-linux-gnu 

내가 내 안드로이드 NDK 빌드를위한 환경을 설정했던 방법은 다음과 같습니다

export CROSS_COMPILE=arm-linux-androideabi 
export CC=${CROSS_COMPILE}-gcc 
export CXX=${CROSS_COMPILE}-g++ 

... 필요에 따라 다른 binutils ...

export NDK=/home/afeder/android/android-ndk-r7-crystax-4 
export SYSROOT=$NDK/platforms/android-8/arch-arm 
PATH=$PATH:$NDK/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin 

CFLAGS, CPPFLAGS 및/또는 CXXFLAGS에 추가하십시오.

./configure --build=x86_64-unknown-linux-gnu --host=arm-linux-androideabi --target=arm-linux-androideabi 
+0

'--sysroot = $ SYSROOT' 또한 전처리 기 플래그 변수'CPPFLAGS'로 갈 필요가 있습니다. upvote에 대한 답변으로 업데이트하십시오. – Samveen

2

arm-linux-androideabi-g++을 찾을 수없는 것 같습니다. NDK 폴더에서 검색하고 PATH에 디렉토리를 추가하십시오.

광산은 여기에 있습니다 : 나 여기에

ndk/toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/arm-linux-androideabi-g++ 
+0

내 생각에도 그렇습니다. 그러나'arm-linux-androideabi-g ++'는 제'PATH'에있는 것처럼 보이고, 방금 실행하면 'arm-linux-androideabi-g ++ '를 명령 행에서 제외하면, 충분히 잘 발견된다. –

+0

'ANDROID_NDK_ROOT' 환경 변수를 설정 했습니까? –

+0

예,'ANDROID_NDK_ROOT'는'/ home/afeder/android-android-ndk-r7-crystax-4'로 설정됩니다. –

관련 문제