[oe] Compile eglibc for x86 failed.
Guo Hongruan
camelguo at gmail.com
Tue Dec 15 09:28:43 UTC 2009
Hi guys,
I tried to use eglibc as system library for my x86 box, so I modified
the conf/distro/minimal-eglibc.conf (see below for my changes). But
compiling eglibc failed with the message "undefined reference to
`__i686.get_pc_thunk.bx", The following is the raw error information. Who
can give me some hint.
ccache i586-oe-linux-gcc -march=i586 -nostdlib -nostartfiles -shared \
-Wl,-z,combreloc -Wl,-z,relro -Wl,--hash-style=both
-Wl,-z,defs -Wl,--verbose 2>&1 | \
LC_ALL=C \
sed -e '/^=========/,/^=========/!d;/^=========/d' \
-e 's/\. = 0 + SIZEOF_HEADERS;/& _begin = . -
SIZEOF_HEADERS;/' \
>
/media/work-disk/workdir/oe-mini/work/i586-oe-linux/eglibc-2.9-r4/build-i586-oe-linux/elf/ld.so.lds
ccache i586-oe-linux-gcc -march=i586 -nostdlib -nostartfiles -shared -o
/media/work-disk/workdir/oe-mini/work/i586-oe-linux/eglibc-2.9-r4/build-i586-oe-linux/elf/ld.so
\
-Wl,-z,combreloc -Wl,-z,relro -Wl,--hash-style=both
-Wl,-z,defs \
/media/work-disk/workdir/oe-mini/work/i586-oe-linux/eglibc-2.9-r4/build-i586-oe-linux/elf/librtld.os
-Wl,--version-script=/media/work-disk/workdir/oe-mini/work/i586-oe-linux/eglibc-2.9-r4/build-i586-oe-linux/ld.map
\ -Wl,-soname=ld-linux.so.2 -T
/media/work-disk/workdir/oe-mini/work/i586-oe-linux/eglibc-2.9-r4/build-i586-oe-linux/elf/ld.so.lds
/media/work-disk/workdir/oe-mini/work/i586-oe-linux/eglibc-2.9-r4/build-i586-oe-linux/elf/librtld.os:
In function `_dl_tlsdesc_dynamic':
(.text+0x141f5): undefined reference to `__i686.get_pc_thunk.bx'
collect2: ld returned 1 exit status
make[2]: ***
[/media/work-disk/workdir/oe-mini/work/i586-oe-linux/eglibc-2.9-r4/build-i586-oe-linux/elf/ld.so]
Error 1
make[2]: Leaving directory
`/media/work-disk/workdir/oe-mini/work/i586-oe-linux/eglibc-2.9-r4/eglibc-2_9/libc/elf'
make[1]: *** [elf/subdir_lib] Error 2
make[1]: Leaving directory
`/media/work-disk/workdir/oe-mini/work/i586-oe-linux/eglibc-2.9-r4/eglibc-2_9/libc'
make: *** [all] Error 2
FATAL: oe_runmake failed
--- minimal-eglibc.conf 2009-12-15 13:44:17.000000000 +0800
+++ minimal-uclibc.conf 2009-12-10 15:00:31.000000000 +0800
@@ -13,17 +13,26 @@
#
# Header
#
-DISTRO_NAME = "minimal-eglibc"
+DISTRO_NAME = "minimal-uclibc"
#
# Target OS & FPU system
#
-TARGET_OS = "linux"
-#TARGET_FPU_arm = "soft"
-#TARGET_FPU_armeb = "soft"
-PREFERRED_PROVIDER_virtual/libc = "eglibc"
-PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-for-gcc = "eglibc"
+TARGET_OS = "linux-uclibc"
+TARGET_FPU_arm = "soft"
+TARGET_FPU_armeb = "soft"
+PREFERRED_PROVIDER_virtual/libc = "uclibc"
+PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}libc-for-gcc = "uclibc"
PREFERRED_PROVIDER_virtual/${TARGET_PREFIX}binutils = "binutils-cross"
PREFERRED_PROVIDER_linux-libc-headers = "linux-libc-headers"
-PREFERRED_PROVIDER_virtual/libiconv = "eglibc"
-PREFERRED_PROVIDER_virtual/libintl = "eglibc"
+PREFERRED_PROVIDER_virtual/libiconv = "libiconv"
+PREFERRED_PROVIDER_virtual/libintl = "proxy-libintl"
+
+USE_NLS ?= "no"
+USE_NLS_glib-2.0 = "yes"
+USE_NLS_glib-2.0-native = "yes"
+USE_NLS_gcc-cross = "no"
+
+PREFERRED_VERSION_uclibc = "0.9.30"
+PREFERRED_VERSION_uclibc-initial = "0.9.30"
+
--
Guo Hongruan, Embedded Linux Consultant
Mobile: +86-0-13484056007
Skype: camelguo
Twitter: camelguo
http://www.gulessoft.com
More information about the Openembedded-devel
mailing list