升级gcc4.8 遇到 fatal error: gnu/stubs-32.h: No such file or directory 问题的解决方法

来源:互联网 发布:powershell 连接linux 编辑:程序博客网 时间:2024/06/10 15:56
 需要升级gcc,发行版Centos 6.5 (final),原版本gcc 4.4.7,打算升级为4.8.5.
  从官网下载gcc-4.8.5.tar.gz
  tar xzvf gcc-4.8.5.tar.gz 解压
  cd gcc-4.8.5
  自带一个脚本可以安装所需要的库(否则自己每个手动安装是件非常痛苦且困难的事情)
  ./contrib/download_prerequisites 开始安装依赖
   
  ./configure 中间可能会提示没有isl,但是我手动安装isl-0.14,isl-0.15都不起作用,可忽略。安装isl时还要安装其他依赖。若无错误信息执行下面make
  make -j8
  此过程非常耗时耗CPU,中间可能会遇到类似
usr/include/gnu/stubs.h:7:27: fatal error: gnu/stubs-32.h: No such file or directory
 这样的错误,为解决这个问题又手动安装了无数个依赖,结果依然无效。最后,在这里找到解决方法。
  
解决方法
解决方法

同时还有一个回答说明了原因
问题原因
问题原因


也就是说,在64位系统中GCC/UPC multilib feature可用,但是却没有安装32位的glibc,就会报错(尼玛,为毛要32位的库。。。?)所以解决办法有两个,一个是关闭multilib,一个是安装32位的glibc。
 我选择的是后者。这时候看上面那个图的解决办法,我是Centos 6.5,所以直接把glibc-devel.i686,libstdc++-devel.i686全部安装
 sudo yum install glibc-devel.i686 libstdc++-devel.i686
 然后重新
 ./configure
  make -j8 (再次强调,此过程非常耗时,我i7-2600,耗时一个小时以上,所以可以去干其他事情了)
  sudo make install

祝成功.另外,如果可以,直接重装系统要比升级来的快
阅读全文
0 0
原创粉丝点击