2017-01-21 4 views
0

gcc-arm-linux-androideabi 컴파일러로 ARM (Android) 용 GLibC 2.24를 크로스 컴파일하려고합니다. 내가 할 실행할 때GLibC 2.24를 컴파일 할 때 오류 1과 함께 실패합니다.

../glibc-2.24/configure --prefix=/usr --host=arm-linux-androideabi --with-headers=/usr/include 

, 그러나 다음과 같은 오류와 함께 실패합니다 : 여기 내가 사용하는 ./configure 실행 구문은 내가이 일어난 이유에 웹을 탐색하지 않았다

In file included from 
../sysdeps/arm/libc-tls.c:19:0: 
../csu/libc-tls.c: In function '__libc_setup_tls': 
../csu/libc-tls.c:191:1: error: '__ARM_NR_set_tls' undeclared (first use in this function) 
../csu/libc-tls.c:191:1: note: each undeclared identifier is reported only once for each function it appears in 
make[2]: *** [/home/red/glibc-build/csu/libc-tls.o] Error 1 
make[2]: Leaving directory `/home/red/glibc-2.24/csu' 
make[1]: *** [csu/subdir_lib] Error 2 
make[1]: Leaving directory `/home/red/glibc-2.24' 
make: *** [all] Error 2 

아무것도 찾는다. 이 오류의 원인은 무엇입니까?

저는 Ubuntu 14.04.5 LTS 64 비트를 실행하고 있습니다.

답변

1

I am running Ubuntu 14.04.5 LTS 64-bit.

이것은 의미없는 상태 표시입니다. 64 비트 뭐라고 요? sparc64, aarch64, x86_64, 다른 것입니까?

대부분 x86_64을 사용하고 있습니다. 이 경우 configure을 잘못 사용하고 있습니다. --host=arm-linux-androideabi은 에게 당신이 ARM 리눅스 머신에서 빌드하고 있다고 말합니다.

당신이 가능성을 의미하는 것은 당신이 arm-linux-androideabi대상을 위해 구축하고자, 그 경우 올바른 configure 명령은 같은 것입니다 것입니다 :

configure --target=arm-linux-androideabi --prefix=/usr ... 

귀하의 --with-headers 설정도 잘못 될 가능성이 높다은 : 암 타겟을 만들기 위해 을 x86_64 호스트에서 사용하고 싶지는 않을 것입니다.

+0

감사합니다. --host를 --target으로 바꾸십시오. – Redectro