LinuxSir.cn,穿越时空的Linuxsir!

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

做LFS编译gcc-3.4.x出错

[复制链接]
发表于 2004-10-31 16:44:59 | 显示全部楼层 |阅读模式
包来源:
Packages(单一TAR):
ftp://ftp.linuxfromscratch.org/pub/lfs/lfs-packages/
里边包括
lfs-packages-5.1.1.tar (5.1.1包)
lfs-packages-testing-2004XXXX.tar (Testing 包)     
lfs-packages-unstable-2004XXXX.tar  (Unstable 包)



由於本人所做的两个LFS都无法使用网络(LFS-5.0 and  LFS-5.1.1),想看看用高点版本的包做做看,现在做LFS所用包为:lfs-packages-unstable-2004XXXX.tar  (Unstable 包)

主系统:turbolinux 10 desktop
环境:按LFS-5.0-HTML中所设定。

编译binutils-2.15.9已完成,没出错!
但是到了编译gcc-3.4.2第一遍时怎么都译不过去,出现如下信息:

# make BOOT_LDFLAGS="-static" bootstrap
...
...
../gcc-3.4.2/gcc/cppcharset.c:In function 'convert_utf8_utf16';
../gcc-3.4.2/gcc/cppcharset.c:338:Sory,unimplemented:inlining failed in call to 'one_utf8_to_utf16';originally indirect function calls never in lined
../gcc-3.4.2/gcc/cppcharset.c:471:sory,unimplemented:call from here
make [2]:***[cppcharset.o] Error 1
make [2]eaving directory '/mnt/lfs/sources/gcc-build/gcc'
make [1]:***[pstage2-build] Error 2
make [1]eaving directory '/mnt/lfs/sources/gcc-build/gcc'
make ***[bootstrap] Error 2
[lfs @localhost gcc-build]#


后本人打上补订:
gcc-3.4.2-linkonce-1.patch
gcc-3.4.2-no_fixinclude-1.patch
gcc-3.4.2-ecpec-1.patch
三个补订中的任何一个,还是其中两个,三个一起打了还是如此,过不去。花了我三天时间,最后决定用gcc-3.3.3

而编译gcc-3.3.3却正常。现在正在创建临时系统中,所用的就是gcc-3.3.3


可到了安装内核头文件时,又遇上麻烦,发现untable中有一个
linux-lib-headers-2.6.8.1.tar.bz2
这个应是为编译glibc所用滴内核头文件吧?

可解压后进去却make 不起来。出现:
 
make :worring:'.config'no found!


# make symlinks

也是如此。

解压内核 linux-2.6.8.1.tar.bz2后进去也是如此,不知道2.6.8.1的内核头文件要怎么装?

要是每个LFS包中都有相关说明书就好了! ̄

又只好用2.4.26的内核头文件。
当然,glibc也就只好装lfs-5.1.1中的.

ps:前两次做出来的lfs可以启动,就是无法找到网卡,
#lspci
会说没此命令,可能是没装上它。可前两个我全是按书中所说的做了啊!怪事!
发表于 2004-10-31 18:06:55 | 显示全部楼层
在不知所以然的情况下,最好还是严格地按照对应版本地文档来,特别是开始地阶段。
安装内核地头文件第一步linux-lib-headers-2.6.8.1.tar.bz2包只要cp一下就可以了,
下一步用linux-2.6.8.1.tar.bz2包先按说明文档make几下再cp就可以了。
网卡地支持应该是配置内核的时候选的,找到你地网卡地驱动编进内核就可以了。
发表于 2004-10-31 18:12:39 | 显示全部楼层
你不是用5.0地文档安装unstable吧.....
这里是unstable地文档,不过没有中文的
http://www.linuxfromscratch.org/lfs/view/unstable/
 楼主| 发表于 2004-10-31 19:24:50 | 显示全部楼层
谢谢楼上兄弟的提醒!
偶确实不是按unstable的文档安装的!
我只是根据5.0和5.1.1的文档结合起来安装!呵呵!
把这些文档都下载了!偶这老是经常打不开网页,在别人机子上也是!是不是局哉网滴都比较难开啊?

好像没看到有下载链接啊!

偶才以为已装了2个LFS了,已是轻车熟路了!哈!谁想到!哎 ̄ ̄ ̄ ̄

继续努力ing !

不过!说实话,要是每个LFS包中都有说明文档的话,那还是比较理想的!



把文档下载页也贴下吧!

好让大家下!偶自个儿也好找点!嘿嘿嘿!

http://www.linuxfromscratch.org/lfs/downloads/
 楼主| 发表于 2004-10-31 20:13:04 | 显示全部楼层
呵呵!

网卡:联想LN-980F

晶片上看不到是啥东东,只看到legXXX!

查看modutils.dep

network加载modutils is tulip

在主系统中,找到modutils.info

看了下,原来是:

tulip:eth
"DEC 21040,most 21*40 Ethernet IO"Base I/O address "0xc0-9a-fA-FJ+"

这个是啥东东偶可就看不懂了!呵呵!DEC晶片好像没听过的说!
 楼主| 发表于 2004-11-2 13:28:56 | 显示全部楼层
看了下安装文档!

原来对主系统有要求:

kernel-2.6.2 or later
gcc-3.0 or later

后本人把主系统kernel升级到2.6.8.1

可到GCC-3.4.2 - Pass 1 时还是出现一样的错:
# make BOOT_LDFLAGS="-static" bootstrap
...
...
../gcc-3.4.2/gcc/cppcharset.c:In function 'convert_utf8_utf16';
../gcc-3.4.2/gcc/cppcharset.c:338:Sory,unimplemented:inlining failed in call to 'one_utf8_to_utf16';originally indirect function calls never in lined
../gcc-3.4.2/gcc/cppcharset.c:471:sory,unimplemented:call from here
make [2]:***[cppcharset.o] Error 1
make [2]eaving directory '/mnt/lfs/sources/gcc-build/gcc'
make [1]:***[pstage2-build] Error 2
make [1]eaving directory '/mnt/lfs/sources/gcc-build/gcc'
make ***[bootstrap] Error 2
lfs:/mnt/lfs/sorces/gcc-build#

不知道是不是跟主系统有关,哪位成功安装过滴兄弟能不能说下安装滴主系统环境?



安装文档中:
Prepare GCC for compilation:

CC="gcc -B/usr/bin" ../gcc-3.4.2/configure \
    --prefix=/tools --libexecdir=/tools/lib \
    --with-local-prefix=/tools --disable-nls \
    --enable-shared --enable-languages=c

The meaning of the configure options:

CC="gcc -B/usr/bin"
This parameter fixes a possible problem with building GCC at this stage, first noticed in LFS 5.1.1. If our host uses a new version of Binutils than we compiled, the host compiler may try use features not supported by our new linker, causing compilation errors. By passing the -B flag to gcc, we cause the compiler to temporarily use the host's linker, which solves the problem.


这个   CC="gcc -B/usr/bin"

应是指定CC滴位置吧!哪位老大能帮译一下!谢谢!
发表于 2004-11-3 08:24:13 | 显示全部楼层
我没有编SVN的200410xx版本,不清楚是什么情况。。

1。如pango所说,严格按照book。 SVN的很多都和5.x不一样的。要仔细看清楚book的指示。

2。主系统,需要2.6.x kernel。这个和LFS 5.x不一样。
gcc我记得是要gcc 3.x.x。太老的会出问题。。

那个 CC="gcc -B/usr/bin" 主要是用来解决host的 binutils太新的问题。比如host是FC2的话。
发表于 2004-11-3 12:14:04 | 显示全部楼层
偶主系统用的slackware10 update kernel to 2.6.8.1
gcc好像是3.3.x

很奇怪,从头到尾没出过错,一个下午搞定:)

btw:我弄得testing, 应该比unstable稳定一些吧
发表于 2004-11-3 12:48:44 | 显示全部楼层
testing基本就是LFS6啦。呵呵。:):)。当然稳定咯。。^_^。
发表于 2004-11-4 09:44:53 | 显示全部楼层
DEC的21140网卡很出名的,现在被intel收购了
驱动配置在
kernel config里的network(10M and 100M)下面的
tulip family里
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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