簡體   English   中英

交叉編譯GLibC 2.24失敗,錯誤1

[英]Cross-compiling GLibC 2.24 fails with Error 1

我正在嘗試使用gcc-arm-linux-androideabi編譯器交叉編譯ARM(Android)的GLibC 2.24。 這是我使用的./configure語法:

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

但是,當我運行make時,它失敗並顯示以下錯誤:

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

我瀏覽了網絡,了解它為什么發生,但沒有找到任何東西。 造成此錯誤的原因是什么?

我正在運行64位Ubuntu 14.04.5 LTS。

我正在運行64位Ubuntu 14.04.5 LTS。

那是毫無意義的陳述。 64位是什么? sparc64aarch64x86_64其他?

很可能您正在使用x86_64 在這種情況下,您使用的configure全部錯誤。 --host=arm-linux-androideabi告訴configure您正在ARM Linux機器上構建,這離事實還遠。

您可能的意思是您要為arm-linux-androideabi target進行構建,在這種情況下,正確的configure命令類似於:

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

您的--with-headers設置也很可能是不正確的:您幾乎可以肯定不想使用x86_64主機上的/usr/include來為arm目標構建。

暫無
暫無

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

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