LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 744|回复: 6

正在编译lfs的gcc部分,出错!内详

[复制链接]
发表于 2003-11-22 06:49:30 | 显示全部楼层 |阅读模式
aries1998 在 11-21-2003 22:16 写下了以下信息:
刚才照着blfs文档编译lfs,在编译gcc3.3.1执行
make BOOT_LDFLAGS="-static" bootstrap 这一部时,先是返回ld -lc 找不到的错误,后来把gcc-3.3.1的3个补丁打上去了,却出了另一个错误,找了半天,是第一个补丁造成的,现在只打了后面2个补丁,不知能不能去掉bootstrap,不让gcc自我编译,这样对以后的工作会不会有影响,我怀疑这样还是通不过gcc这一关! 谢谢!
 楼主| 发表于 2003-11-22 06:50:21 | 显示全部楼层
我想你应该先打补丁,再执行make bootstrap这一步.
因为你make 出错后,再打补丁,这样是不对的.
发表于 2003-11-22 07:06:19 | 显示全部楼层
我刚才先是make distclean 然后重新打补丁,然后configure  make的
先前也看了一位兄弟在mandrake下安装的过程,但是我们的错误不一样,我这里有3种情况,都尝试了,还是过不了。
1 , 不打补丁,出现下面的错误
In file included from system.h:162,
                 from gengenrtl.c:23:
../include/limits.h:124:3: warning: suggest hiding #include_next                                    from traditional C with an indented #
stage1/xgcc -Bstage1/ -B/tools/i686-pc-linux-gnu/bin/   -g -O2 -                                   DIN_GCC   -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing                                   -prototypes -Wtraditional -pedantic -Wno-long-long   -DHAVE_CONF                                   IG_H -DGENERATOR_FILE -static -o gengenrtl \
gengenrtl.o ../libiberty/libiberty.a
/tools/i686-pc-linux-gnu/bin/ld: cannot find -lc
collect2: ld returned 1 exit status
make[2]: *** [gengenrtl] Error 1
make[2]: Leaving directory `/mnt/lfs/sources/pacs/job/gcc-3.3.1/                                   gcc'
make[1]: *** [stage2_build] Error 2
make[1]: Leaving directory `/mnt/lfs/sources/pacs/job/gcc-3.3.1/                                   gcc'
make: *** [bootstrap] Error 2


2,  3个补丁全部打,就会报无法找到times.h 和limits.h等错误(第一个补丁文件里面涉及的文件)

3, 只打后面2个补丁,就会多出几个stdlib.h  errorno.h string.h /sys/types.h等文件找不到
4 , 仍然是只打2个补丁,把这几个头文件从/usr/include 下面考到gcc编译目录的include文件夹下,就会出现和第一种情况相同的情况。

我的系统是mandrake9.2 gcc版本是3.3.1,刚刚把gcc3.3.1-2mdk 升级到
cooker版本的gcc-3.3.1-4mdk  还是一样 ,我现在试试还是打3个补丁,也拷贝这些头文件,看会出现什么错误!
 楼主| 发表于 2003-11-22 07:36:09 | 显示全部楼层
你也别make distclean了,直接删了两个目录:gcc-3.3.1和gcc-build
再来.
书上说的补丁不是bootstrap时候用的,你要看清楚.
发表于 2003-11-22 08:09:47 | 显示全部楼层
是啊,我也正在这里编,到现在也没有出现问题,bootstrap是在第一遍gcc的时候用的,补丁是在第二遍gcc的时候用的。
 楼主| 发表于 2003-11-22 08:32:14 | 显示全部楼层
看来aries1998老兄是把补丁用错地方了,呵呵.
发表于 2003-11-22 16:05:02 | 显示全部楼层
唉,看错了喽,我总以为补丁肯定是一种补救措施,肯定会出的很晚,没想到在这种翻译后的官方文档里面会要求在安装的时候打补丁,可能是安装那些发型版造成的思维吧。
  后来是把文档先全看了一遍,再来重新开始,现在重新开始,果然过了GCC一关,留个教训“文档不是小说,可看可不看,而且必须得仔细得看”。谢谢大家,特别是tram的一句“书上说的补丁不是bootstrap时候用的,你要看清楚.” ,汗啊,有书不读的后果啊!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表