当前位置:   article > 正文

GCC最新版安装及错误解决_e: package 'lib32gcc1' has no installation candida

e: package 'lib32gcc1' has no installation candidate

linux下gcc安装


1、准备工作


linux一般可以从软件包等方式直接安装gcc,但不一般不是最新版,比如需要支持C++11

等原因,则需要安装最新版gcc。

先查看已有的gcc版本



如果系统还没有任何gcc被安装,则需要从开发包中先安装默认的低版本的gcc

centos下也可以安装带gcc的开发工具:yum groupinstall "Development Tools"

若不先安装旧版本的话安装可能会出现如下错误:


  1. //=======================================
  2. configure: error: no acceptable C compiler found in $PATH
  3. //=======================================



2、下载


gcc下载地址

ftp://ftp.mirrorservice.org/sites/sourceware.org/pub/gcc


gcc在下面的 releases 文件夹内,目前最新版为 4.8.2



若直接安装会出现如下错误:


  1. //=============================出现错误=====================================
  2. configure: error: Building GCC requires GMP 4.2+, MPFR 2.3.1+ and MPC 0.8.0+.
  3. Try the --with-gmp, --with-mpfr and/or --with-mpc options to specify
  4. their locations.
  5. //==========================================================================

因为缺少gcc依赖的gmp、mpfr、mpc三个软件,所以需要下载安装他们,他们在上面的
 infrastructure 文件夹内可以找到。同时gmp与mpfr及mpc之间还有相互依赖关系,所以
 要按下面顺序安装,并在 configure后面的选项后面带上所依赖软件的路径


下载好所有文件及解压后如下:



3、安装及错误解决



  1. //1、解压gcc
  2. $tar -jxvf gcc-4.8.2.tar.bz2
  3. $cd gcc-4.8.2
  4. //2、解压安装gmp
  5. $tar -jxvf gmp-4.3.2.tar.bz2
  6. $cd gmp-4.3.2
  7. $./configure --prefix=/usr/local/gmp-4.3.2 //gmp安装路径
  8. $make
  9. $make check
  10. $sudo make install
  11. //3、解压安装mpfr
  12. $tar -jxvf mpfr-2.4.2.tar.bz2
  13. $cd mpfr-2.4.2
  14. //congfigure后面是mpfr安装路径及依赖的gmp路径
  15. $configure --prefix=/usr/local/mpfr-2.4.2 --with-gmp=/usr/local/gmp-4.3.2
  16. $make
  17. $make check
  18. $sudo make install
  19. //4、解压安装mpc
  20. $tar -zxvf mpc-0.8.1.tar.gz
  21. $cd mpc-0.8.1
  22. //congfigure后面是mpc安装路径及依赖的gmp和mpfr路径
  23. $configure --prefix=/usr/local/mpc-0.8.1
  24. --with-gmp=/usr/local/gmp-4.3.2 --with-mpfr=/usr/local/mpfr-2.4.2
  25. $make
  26. $make check
  27. $sudo make install
  28. 若没有下面的配置,则会出现如下的mpc库错误及其他库错误等等,所以需要进行一系列配置
  29. //================================出现错误======================================
  30. gcc error while loading shared libraries: libmpc.so.2:
  31. cannot open shared object file:No such file or directory
  32. //===============================================================================
  33. //5、配置库路径
  34. #vi /etc/profile //向/etc/profile文件末尾添加下面的语句(root权限下):
  35. export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/gmp-4.3.2/lib:
  36. /usr/local/mpfr-2.4.2/lib:/usr/local/mpc-0.8.1/lib
  37. #source /etc/profile //使其立即生效
  38. #echo $LD_LIBRARY_PATH //查看配置是否成功
  39. /usr/local/gmp-4.3.2/lib:/usr/local/mpfr-2.4.2/lib:/usr/local/mpc-0.8.1/lib //显示这个表示成功
  40. #vi /etc/ld.so.conf //编辑这个文件,添加下面路径
  41. /usr/local/mpc-0.8.1/lib
  42. /usr/local/gmp-4.3.2/lib
  43. /usr/local/mpfr-2.4.2/lib
  44. $sudo ldconfig
  45. //6、安装gcc
  46. $./configure --prefix=/usr/local/gcc4.8.2 --enable-threads=posix --disable-checking --disable-multilib
  47. --enable-languages=c,c++ --with-gmp=/usr/local/gmp-4.3.2 --with-mpfr=/usr/local/mpfr-2.4.2 --with-mpc=/usr/local/mpc-0.8.1
  48. $make
  49. $sudo make install
  50. //7、配置gcc
  51. #vi /etc/profile //向/etc/profile文件末尾添加下面的语句(root权限下):
  52. export PATH=$PATH:/usr/local/gcc4.8.2
  53. #source /etc/profile //使其立即生效
  54. #rm /usr/bin/gcc //删除旧的软连接
  55. #ln -s /usr/local/gcc4.8.2/bin/gcc /usr/bin/gcc //使新版本建立软连接
  56. //下面的同理
  57. #rm /usr/bin/g++
  58. #ln -s /usr/local/gcc4.8.2/bin/g++ /usr/bin/g++



4、最后



查看是否安装更新成功:





这样最终就安装更新成功了,安装过程时间不短,破费功夫,若依赖文件及配置等处理的好的话会快些,过程中会出现很多错误, 一定要耐心解决。

一般命令的话在一般用户下即可解决($),需要 root 权限的,可以用 su 切换到 root 下 (#),或者在一般用户下,命令前加  sudo  ,

关于 sudo 可以查看:

http://blog.csdn.net/wtfmonking/article/details/15494295




5、其他问题


如果不小心误删了 /usr/bin/gcc ,可以先删除旧版 gcc,在从软件包重新安装旧版,
最后再按上面的步骤安装新版。centos下可以:


  1. $sudo yum remove gcc-* -y
  2. $sudo yum groupinstall "Development Tools"


声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号