學習編譯 cross compiler 發生的問題

我們生活周遭存在太多太多的 embedded system ,過去 embedded system 有專屬的 OS,現在 linux 也可以應用在嵌入式環境,不過本版將廣泛討論所有嵌入式系統不只 linux 喔,歡迎有這方面經驗或有興趣的朋友一同進來討論。

版主: chester

學習編譯 cross compiler 發生的問題

文章jnc » 週一 10月 27, 2008 3:10 pm

各位先進,

小弟目前使用 x86 練習編譯 x86 cross compiler, 即 host 和 target 皆為 x86. 但在編譯 glibc 時發生了下列錯誤:

i686-cross-linux-gnu-gcc -nostdlib -nostartfiles -r -o /home/gene/work/embeded/x86/build/toolchain/build-glibc/elf/librtld.map.o '-Wl,-(' /home/gene/work/embeded/x86/build/toolchain/build-glibc/elf/dl-allobjs.os /home/gene/work/embeded/x86/build/toolchain/build-glibc/libc_pic.a -lgcc '-Wl,-)' -Wl,-Map,/home/gene/work/embeded/x86/build/toolchain/build-glibc/elf/librtld.mapT
/home/gene/work/embeded/x86/toolchain/lib/gcc/i686-cross-linux-gnu/4.3.1/../../../../i686-cross-linux-gnu/bin/ld: cannot find -lgcc
collect2: ld returned 1 exit status
make[2]: *** [/home/gene/work/embeded/x86/build/toolchain/build-glibc/elf/librtld.map] Error 1
make[2]: Leaving directory `/home/gene/work/embeded/x86/source/toolchain/glibc/elf'
make[1]: *** [elf/subdir_lib] Error 2
make[1]: Leaving directory `/home/gene/work/embeded/x86/source/toolchain/glibc'
make: *** [all] Error 2

此錯誤為找不到 libgcc.a or libgcc.so. 小弟在編譯 gcc 的目錄下的確沒找到, 請各位先進多多指導 謝謝!

小弟使用的tools 如下
binutils: 2.18
gcc 4.3.0
glibc 2.8.x

TARGET=i686-cross-linux-gnu

編譯glibc 時的configure:
BUILD_CC="gcc" CC="$TARGET-gcc" AR="$TARGET-ar" RANLIB="$TARGET-ranlib" CFLAGS="-march=$(cut -d- -f1 <<< $TARGET) -mtune=generic -g -O2" ../../../source/toolchain/glibc/configure --prefix=$PREFIX --host=$TARGET --disable-profile --enable-add-ons --with-tls --enable-kernel=2.6.0 --with-headers=$TARGET_PREFIX/include --cache-file=config.cache
jnc
可愛的小學生
可愛的小學生
 
文章: 1
註冊時間: 週一 10月 27, 2008 2:38 pm

回到 embedded system

誰在線上

正在瀏覽這個版面的使用者:沒有註冊會員 和 1 位訪客