LinuxSir.cn,穿越时空的Linuxsir!

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

编译gcc-3.2时碰到的问题

[复制链接]
发表于 2002-12-2 17:17:11 | 显示全部楼层 |阅读模式
第一次编译gcc-3.2,安装第二个patch出现问题,改了几次都通不过,干脆不用第二个patch,编译居然通过。本来patch是用来防止编译时出现问题的,不用patch才能通过说明安装说明书可能存在bug。
进入第六章后,第二次编译gcc-3.2,又出现问题。下面是错误提示:
f [ x"-fpic" != x ]; then \
  gcc -c -DHAVE_CONFIG_H -g -O2 -I. -I../../gcc-3.2/libiberty/../include  -W -Wall -Wtraditional -pedantic -fpic ../../gcc-3.2/libiberty/cplus-dem.c -o pic/cplus-dem.o; \
  else true; fi
  In file included from ../../gcc-3.2/libiberty/cplus-dem.c:41:
  /static/lib/gcc-lib/i686-pc-linux-gnu/3.2/include/stdio.h:561:30: bits/sys_errlist.h: No such file or directory
  make[1]: *** [cplus-dem.o] Error 1
  make[1]: Leaving directory `/usr/src/gcc-build/libiberty'
  make: *** [all-libiberty] Error 2
我按照提示查了一下,在$LFS/usr/include/bits下果然没有sys_errlist.h这个文件,我又到/usr/include/bits下,看到有一个sys_errlist.h文件,把它复制到$LFS/usr/include/bits下,再编译,顺利通过。应该说gcc的编译和安装是很严格的,不会轻易出现缺少文件的问题,难道是我前面第一次编译gcc时没有补上第二个patch造成的?
希望各位高手指教。
发表于 2002-12-2 18:12:30 | 显示全部楼层
我记得你是在mandrake上吧,你用的是什么编译器来编译第五章里的gcc呢?我在mandrake里,也在gcc出过问题的,可能和编译器有关,在redhat下,用gcc3.2来做第五章就没有这样的问题了。
发表于 2002-12-3 01:07:52 | 显示全部楼层
KJ兄的路可真是艰辛。要是我第一次装遇到这么多困难现在肯定还在RH呢。
感谢上帝,我最开始用的士RH不是MDK

我觉得是不是第二个PATCH的事情,读读那个PATCH是最好的方法了。

最近我也遇到一些小破软件编译的时候和SYS_ERRLIST冲突的事情,但是大软件都没问题。

这个USR/INCLUDE我认为(我现在手边没有LINUX,信口胡说了,回家可以再看看)是不是在前面安装内河文件的时候装的?还是GLIBC的?你既然是编译GCC,那么就是说新的GCC还没有装到/USR的目录,第5章的GCC不应该装到/USR的目录而是/STATIC的里面。所以这个文件不应该是来自GCC的。我觉得
 楼主| 发表于 2002-12-3 07:56:45 | 显示全部楼层
感谢两位的帮助。我仔细考虑了一下,这个头文件应该是glibc安装时带上去的,与gcc没有关系。但如果glibc出现问题,以后的编译安装麻烦可就大了,我昨天编译net-tools又碰到问题,正在想办法解决。
发表于 2002-12-3 08:56:34 | 显示全部楼层
patch -Np1 -i ../gcc-3.2-nofixincludes-2.patch: 这个补丁阻止fixincludes脚本运行。在正常的环境中,安装GCC会运行fixincludes脚本,这个脚本扫描系统,找到需要修改的头文件。比如说它找到了 Glibc 的头文件。它会修改它们,并放在 $LFS/static/lib/gcc-lib/i686-pc-linux-gnu/3.2 目录中。在随后的第六章中,你将安装的 Glibc 会把头文件放在 /usr/include 目录中。接着,你将安装其它要用到 Glibc 头文件的程序。这时,GCC 会先在 /static/lib/gcc-lib 中找头文件,而不是在 /usr/include 目录中,这就会使用你主系统的 Glibc 头文件,而这个头文件可能与你的 LFS 系统中的 Glibc 版本不同,就可能会造成不兼容。
发表于 2002-12-3 09:27:24 | 显示全部楼层
我有一个问题想问TRAM,你每天什么时候睡觉?你现在生活在哪个时区?
发表于 2002-12-3 09:39:00 | 显示全部楼层
我大概是生活在北极,现在极昼,呵呵
发表于 2002-12-3 09:39:41 | 显示全部楼层
错了错了,南极!
发表于 2002-12-3 09:47:30 | 显示全部楼层
看IP是杭州的。

你天天这样昼夜颠倒,你LP不和你急么?

我要是回了北京哪有这样好日子过?
发表于 2002-12-3 09:51:13 | 显示全部楼层
和LP吵架中,没心思睡觉了,呵呵。
你听过Lunar么?也是一个基于LFS的发行版,很火啊,现在。glibc都用到2.3.1了,什么都特新。我就是找不到它们的build文件,只有iso下,太大了,你拿回来看看吧!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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