今天升级了gcc到3.4.5了
Saturday, 4. March 2006, 11:13:37
http://www.gentoo.org/doc/en/gcc-upgrading.xml
我以前的CHOST设的是i386,因为那个用的是duron的cpu,那个时候官方的文档说duron不要设成了i686,今天在gentoo wiki上看到了一个关于各种类型的cpu的CFlag的设定方法,所以决定趁着这次要升级gcc,一并改了,这样系统就可以少编译一次。我的make.conf设置,根据gentoo wiki上的提供的资料对应着自己的cpu信息,可以找到自己合适的设置。
CFLAGS="-march=athlon-xp -O2 -pipe -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
CXXFLAGS="${CFLAGS}"
按照gentoo gcc升级指南上面,我重新编译了gcc3.4.5之后,用gcc-config转到心的gcc配置,以后就都不能用emerge了,说是找不到共享库libstdc++.so.5,没有办法到处找资料,但是没有找到合适的,不过看了一些资料,大概知道了毛病出在了哪,因为更新了之后,python没有被编译过,所以python就找不到那个共享库了,遂拷贝了老的gcc库中的libstdc++.so.5放到了/usr/local/lib中,这个时候更新环境变量之后,如果不行,可以用gcc-config再设定一次,还有可以到/etc/env.d/gcc下面直接改设置。确保你用的是新的编译器gcc-3.4.5,这个时候emerge应该可以工作了,先编译了python,然后删除刚刚考过去的/usr/local/lib/libstdc++.so.5。最后用
emerge -e system emerge -e world
这需要一个很长的过程,要有心理准备,几十个小时吧
编译整个系统。最后删除老版的gcc就可以了。













