LinuxSir.cn,穿越时空的Linuxsir!

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

升级Gcc出问题了

[复制链接]
发表于 2005-12-6 16:43:45 | 显示全部楼层 |阅读模式
Gcc本来是3.3.4升级道3.4.4,gcc是升级成功了,但是升级完后没有编译系统,就把原来的gcc给删了,现在大部分软件包括emerge都不能用了,就是那个libstdc..++.so.5 找不到的错误。
我是按照http://gentoo-wiki.com/HOWTO_Migrate_to_GCC_3.4 里面写的升级的,只是升级完gcc后,就emerge --prune,然后就这样了,看到最后说删除旧的Gcc的时候十分危险,要先把以上步骤包括重新编译系统,软件做完,要不就惨了,可是我已经惨了,请问各位大侠怎么修复啊?
发表于 2005-12-6 18:30:05 | 显示全部楼层
找个stage3的包,把里面的gcc解出来好拉
回复 支持 反对

使用道具 举报

发表于 2005-12-6 20:45:48 | 显示全部楼层
很容易的.改/etc/ld.so.conf加上/usr/lib/gcc-lib/i686-pc-linux-gnu/3.3.6
再ldconfig -v就行了.
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-12-7 14:00:52 | 显示全部楼层
我试试再来报告各位。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-12-7 14:31:07 | 显示全部楼层
fei斑竹的方法不行阿,我没有/usr/lib/gcc-lib这个目录。
用locate libstdc++.so. 5 看了一下,猛然发现/opt/vmware的子目录有一个这个文件,然后
ln -s /opt/vmware/..../libstdc++.so.5 /usr/lib
就可以继续了。首先 emerge -e system,有99个文件,慢慢编译吧。
回复 支持 反对

使用道具 举报

发表于 2005-12-8 06:30:24 | 显示全部楼层
Post by alzhao
fei斑竹的方法不行阿,我没有/usr/lib/gcc-lib这个目录。
用locate libstdc++.so. 5 看了一下,猛然发现/opt/vmware的子目录有一个这个文件,然后
ln -s /opt/vmware/..../libstdc++.so.5 /usr/lib
就可以继续了。首先 emerge -e system,有99个文件,慢慢编译吧。


怎么可能会没有gcc-lib的呢? 诡异哦...:!!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-12-8 14:11:58 | 显示全部楼层
Post by 小劲鸭
怎么可能会没有gcc-lib的呢? 诡异哦...:!!

我把gcc-3.3.6卸载了,这个目录也给卸载调了阿。
现在已经解决了,把那个libstdc++.so.5 考到/usr/lib里面去,然后重新emerge了一下system,现在一切正常了。
回复 支持 反对

使用道具 举报

发表于 2005-12-9 10:56:49 | 显示全部楼层
没完全照指南来吧?
回复 支持 反对

使用道具 举报

发表于 2005-12-9 11:02:17 | 显示全部楼层
试试fix_libtool_files
~ #  fix_libtool_files.sh
Usage: fix_libtool_files.sh <old-gcc-version> [--oldarch <old-CHOST>]

    Where <old-gcc-version> is the version number of the
    previous gcc version.  For example, if you updated to
    gcc-3.2.1, and you had gcc-3.2 installed, run:

      # fix_libtool_files.sh 3.2

    If you updated to gcc-3.2.3, and the old CHOST was i586-pc-linux-gnu
    but you now have CHOST as i686-pc-linux-gnu, run:

      # fix_libtool_files.sh 3.2 --oldarch i586-pc-linux-gnu

    Note that if only the CHOST and not the version changed, you can run
    it with the current version and the '--oldarch <old-CHOST>' arguments,
    and it will do the expected:

      # fix_libtool_files.sh `gcc -dumpversion` --oldarch i586-pc-linux-gnu
回复 支持 反对

使用道具 举报

发表于 2005-12-28 00:59:18 | 显示全部楼层
用revdep-rebuild,会自动检查系统并编译包,可以修复问题等于用Gcc3.4.4编译了部分system,解决依赖性的问题。
回复 支持 反对

使用道具 举报

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

本版积分规则

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