LinuxSir.cn,穿越时空的Linuxsir!

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

请问有没有直接用gcc4编译stage1的方法

[复制链接]
发表于 2005-5-10 16:52:11 | 显示全部楼层 |阅读模式
搜索了一下,发现了篇相关文章,一看,原来还是stage3的,它标题写的太不厚道,就是这篇帖子:
http://www.linuxsir.cn/bbs/showt ... mp;highlight=stage1

还请sunmoon1997和各位尝试过的兄弟支招,谢谢
发表于 2005-5-10 17:09:53 | 显示全部楼层
展开 stage1-x86-2005.0.tar.bz2 后,在 /etc/portage/ 目录下创建文件:

/etc/portage/package.keywords:
  1. =sys-devel/gcc-4.0.0 -* x86
  2. =sys-devel/binutils-2.15.97 -* x86
  3. =sys-libs/glibc-2.3.5.20050421 -* x86
复制代码

/etc/portage/package.unmask:
  1. >=sys-devel/gcc-4.0.0_alpha20050123
  2. =sys-libs/glibc-2.3.5.20050421
  3. =x11-base/xorg-x11-6.8.2-r2
复制代码


然后按正常方法 bootstrap
回复 支持 反对

使用道具 举报

发表于 2005-5-10 17:11:38 | 显示全部楼层
不要把 CFLAGS 设得过强,可能会 break 某些包
我用的
  1. CFLAGS="-march=pentium4 -O2 -fomit-frame-pointer -pipe"
  2. CXXFLAGS="${CFLAGS}"
复制代码
回复 支持 反对

使用道具 举报

发表于 2005-5-10 17:13:52 | 显示全部楼层
如果你想节省一点编译时间,可以只编译glibc的nptl版,在 /etc/make.conf 中 USE 里加上
"nptl nptlonly" 两项
回复 支持 反对

使用道具 举报

发表于 2005-5-10 17:15:42 | 显示全部楼层
我这么试了,很顺利,可是启动的时候有一个段错误。观望ing,
回复 支持 反对

使用道具 举报

发表于 2005-5-10 17:18:44 | 显示全部楼层
Post by graydream
我这么试了,很顺利,可是启动的时候有一个段错误。观望ing,


内核用gcc4编译会有一个 Oops 导致 sysctl 段错误,我用gcc3编译的内核。
回复 支持 反对

使用道具 举报

发表于 2005-5-10 17:28:51 | 显示全部楼层
ACCEPT_KEYWORDS=~x86
linux-headers > 2.6.11
binutils = 2.15.97
glibc = 2.3.5.20050421
不要使用 portage 中的 gcc-4.0.0

可以使用这个 ebuild:
www.magiclinux.org/people/sunmoo ... lds/gcc/gcc.tar.bz2

楼上的问题 cvs 中的 gcc-4.0 已经解决。:)
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-5-10 18:00:31 | 显示全部楼层
用portage里的 gcc 4.01 beta可以吗?
回复 支持 反对

使用道具 举报

发表于 2005-5-10 19:10:38 | 显示全部楼层
大家怎么那么喜欢用gcc-4.0呢?官方都承认有很多缺陷,而且编译的速度和代码质量还没有没有好过gcc-3.4.3,再等等噢,4.0.1就会好很多了
回复 支持 反对

使用道具 举报

发表于 2005-5-11 09:09:15 | 显示全部楼层
还有,/etc/portage/package.unmask中的xorg-x11可以设置成6.8.99了。我用的是官方的gcc4.0.0。建议在第一次emerge -e system后,执行一次emerge prune把旧的gcc删除。然后再用gcc4编译一遍gcc3.4.3-20050110,这个时候只需要半个小时就可以把gcc3.4.3编译完,可见gcc4的性能超强。然后切记将automake的几个版本都编译一下,否则就剩下最新的automake-1.9了。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

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