|
|
发表于 2006-3-3 19:07:32
|
显示全部楼层
http://gentoo-wiki.com/HOWTO_Migrate_to_GCC_3.4
Removing gcc-3.3.x
You'll probably find that an emerge world will try and upgrade your gcc-3.3.x install even when you're running on 3.4.x. To stop this from happening you can remove gcc-3.3.x from your system.
DO NOT do this until you have tested your system with gcc 3.4.x as the following procedures disables the ability to revert back to 3.3.x.
REMEMBER this is a dangerous step and can result in an impaired system (in the case of missing libstdc++ on depclean). This step must be done after the previous ones.
If unfortunately, you have removed gcc-3.3.x without re-emerging system, you'll perhaps get an error: "libstdc++.so.5 can not be found". At this moment, you can get the file from original gentoo installation CD (unpack it from the package, be sure the gcc version is the same) and copy it to /usr/lib/, then you can go back to the previous step to re-emerge system.
N.B. Before doing this you should check that none of your packages have gcc-3.3.x as a dependency by running:
# emerge -pv --update --deep world --tree
Remove gcc-3.3.x from your system.
# emerge -C =gcc-3.3.<version>
You can find your <version> by typing
# gcc-config -l
and subsituting <version> for your entire build number - eg) =gcc-3.3.5.2005018-r1
After the unmerge you may need to repair some libraries do this using revdep-rebuild (may take some time)
# revdep-rebuild
note: some binary packages require the old libstdc++ library, these packages can be repaired by emerging libstdc++-v3 so if you get problems with missing libstdc++ usually related to realplay
# emerge libstdc++-v3 |
|