|
|
发表于 2006-4-22 01:41:19
|
显示全部楼层
Post by wangtzh
Mandriva好像有一些开发工具不全.对编译lfs缺少那些?
编译6.1的binutils pass1时就出错了:
/bin/sh ./libtool --mode=link gcc -W -Wall -Wstrict-prototypes -Wmissing-prototypes -g -O2 -o ar arparse.o arlex.o ar.o not-ranlib.o arsup.o rename.o binemul.o emul_vanilla.o bucomm.o version.o filemode.o ../bfd/libbfd.la ../libiberty/libiberty.a -ldl
gcc -W -Wall -Wstrict-prototypes -Wmissing-prototypes -g -O2 -o ar arparse.o arlex.o ar.o not-ranlib.o arsup.o rename.o binemul.o emul_vanilla.o bucomm.o version.o filemode.o ../bfd/.libs/libbfd.a ../libiberty/libiberty.a -ldl
arlex.o(.text+0x0): In function `main':
/mnt/lfs/sources/binutils-build/binutils/arlex.c:1: multiple definition of `main'
arparse.o(.text+0x0):/mnt/lfs/sources/binutils-build/binutils/arparse.c:1: first defined here
ar.o(.text+0xc20): In function `main':
../../binutils-2.15.94.0.2.2/binutils/ar.c:342: multiple definition of `main'
arparse.o(.text+0x0):/mnt/lfs/sources/binutils-build/binutils/arparse.c:1: first defined here
/usr/bin/ld: Warning: size of symbol `main' changed from 15 in arparse.o to 3256 in ar.o
bucomm.o(.text+0x895): In function `make_tempname':
../../binutils-2.15.94.0.2.2/binutils/bucomm.c:425: warning: the use of `mktemp' is dangerous, better use `mkstemp'
ar.o(.text+0x23): In function `mri_emul':
: undefined reference to `yyparse'
collect2: ld returned 1 exit status
make[3]: *** [ar] 错误 1
make[3]: Leaving directory `/mnt/lfs/sources/binutils-build/binutils'
make[2]: *** [all-recursive] 错误 1
make[2]: Leaving directory `/mnt/lfs/sources/binutils-build/binutils'
make[1]: *** [all-recursive-am] 错误 2
make[1]: Leaving directory `/mnt/lfs/sources/binutils-build/binutils'
make: *** [all-binutils] 错误 2
从 kernel.org 下的 binutils 版本号一般是 2.15.9* , 不推荐使用, 推荐用 http://ftp.gnu.org/pub/gnu/binutils/binutils-2.16.1.tar.bz2 .
如果非要用 kernel.org 的, 要确定系统中有 flex 和 bison . 也就是 pass1 , 主系统中要有 flex 和 bison , pass2, 先在 /tools 里装上 flex 和bison. |
|