ubuntu系统gcc版本切换指导

  • 安装gcc
    • apt安装:sudo apt-get install gcc-7.2.0(未测试)
    • 安装包安装
      • 下载安装包:https://link.csdn.net/?target=https%3A%2F%2Fmirrors.tuna.tsinghua.edu.cn%2Fgnu%2Fgcc%2Fgcc-7.2.0%2Fgcc-7.2.0.tar.gz
      • 解压:tar -zxvf gcc-7.2.0.tar.gz gcc-7.2.0/
      • 进入目录:cd gcc-7.2.0
      • 下载依赖包
        • 方法一:./contrib/download_prerequisites
        • 方法二:手动下载
          • isl-0.16.1.tar.bz2
          • cp isl-0.16.1.tar.bz2 ./gcc-7.2.0
            cd ./gcc-7.2.0 && tar -xvjf isl-0.16.1.tar.bz2
            ln -s ./isl-0.16.1 isl
            
          • mpfr-3.1.4.tar.gz
          • cp mpfr-3.1.4.tar.bz2 ./gcc-7.2.0
            cd ./gcc-7.2.0 && tar -xvjf mpfr-3.1.4.tar.bz2
            ln -s ./mpfr-3.1.4 mpfr
            
          • mpc-1.0.3.tar.gz
          • cp mpc-1.0.3.tar.gz ./gcc-7.2.0
            cd ./gcc-7.2.0 && tar -zxvf mpc-1.0.3.tar.gz
            ln -s ./mpc-1.0.3 mpc
            
          • gmp-6.1.0.tar.bz2

          • cp gmp-6.1.0.tar.bz2 ./gcc-7.2.0
            cd ./gcc-7.2.0 && tar -xvjf gmp-6.1.0.tar.bz2
            ln -s ./gmp-6.1.0 gmp
            
      • 建立新的build文件夹,保证源目录的整洁性
      • mkdir build 
        
        cd build
        
      • 运行一些配置命令
        •  ../configure --prefix=/usr/local/gcc-7.2.0 --enable-checking=release --enable-languages=c,c++ --disable-multilib
          
        • 执行该配置命令可能会出现gcc: error: unrecognized command line option '-V'(通过grep -n error config.log找到),将configure脚本里“--version -v -V -qversion”地方都改成“--version -v”
      • 编译gcc:make -j 32
        • 编译过程若出现错误'aclocal-1.14' is missing on your system,则需要安装automake
        • wget http://ftp.gnu.org/gnu/automake/automake-1.14.1.tar.gz
          
          tar -zxvf automake-1.14.1.tar.gz -C /opt/
          
          cd /opt/automake-1.14.1
          
          输入命令:./bootstrap.sh
          
          配置环境:./configure
          
          配置并安装:make;make install
          
          检查automake --version
          
        • 在安装automake过程中出现autom4te: command not found,则需要安装autoconf
          • apt方式:sudo apt-get install autoconf
          • 安装包安装方式:下载下面3个deb文件,sudo dpkg -i *.deb
            • autoconf_2.69-6_all.deb
            • libsigsegv2_2.10-2_amd64.deb
            • m4_1.4.17-2ubuntu1_amd64.deb
          • 安装autoconf过程中会出现Unescaped left brace in regex is illegal here in regex;问题,这是因为perl版本太高,需要版本降级
            • 源码安装方式:下载perl_5.18.2.orig.tar.bz2
            • tar -xvf perl_5.18.2.orig.tar.bz2
              cd perl_5.18.2
              ./configure.gnu --prefix=/usr -Dpager="/bin/less -isR"
              make -j8 && sudo make install
      • sudo make install(到这里已经切换成功了,后面没有测试使用
  • 查看当前使用版本
    • gcc --verison
  • 切换目标版本
    • which gcc # 找到gcc的安装目录, 这里假设是在/usr/bin/gcc-7
    • sudo rm -f /usr/bin/gcc    # 删除原本的软连接
    • sudo ln /usr/bin/gcc-7 /usr/bin/gcc   # 创建指向gcc-7的软连接

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值