centos下升级gcc-7.2.0

所需依赖资源包详情如下:

gcc-7.2.0.tar.xz
gmp-6.1.0.tar.bz2
mpc-1.0.3.tar.gz
mpfr-3.1.4.tar.bz2
isl-0.16.1.tar.bz2

温馨提示:若以上资源包下载不了,可以使用离线的资源,亲测可用:gcc7.2.0_download_prerequisites_安装gcc依赖

安装过程中./contrib/download_prerequisites这一步大部分国内用户都会失败,由于网络等问题,所需的资源包下载不了,下面的命令本质上来说做的操作就是下载所需的四个资源环境包,分别为:gmp-6.1.0.tar.bz2、mpc-1.0.3.tar.gz、mpfr-3.1.4.tar.bz2、isl-0.16.1.tar.bz2。

可以采用手动下载的方式,提前下载好以上四个所需资源包,然后放在gcc-7.2.0的解压根目录,再执行./contrib/download_prerequisites --no-verify即可。

安装过程:

#将所有安装包上传到Linux环境下,解压缩处理
tar xvf gcc-7.2.0.tar.xz

cd gcc-7.2.0

#下面这一步大部分国内用户都会失败,由于网络等问题,所需的资源包下载不了,下面的命令本质上来说做的操作就是下载所需的四个资源环境包,分别为:gmp-6.1.0.tar.bz2、mpc-1.0.3.tar.gz、mpfr-3.1.4.tar.bz2、isl-0.16.1.tar.bz2。这里我采用手动下载的方式,提前下载好所需资源包,之后上传到该目录下即可。
./contrib/download_prerequisites

#configure的最后一个参数是关闭32位库,只编译64位库,我的电脑是64位的。如果想要同时编译32位和64位,可以使用-enable-multilib
 ./configure --prefix=/usr/local/gcc-7.2.0 --enable-bootstrap --enable-languages=c,c++ --enable-threads=posix --enable-checking=release --disable-multilib --with-system-zlib

#执行命令进行编译,此处利用4个job
make -j16

#安装
make install
#成功执行完成之后,可以查看gcc和g++的版本

#测试
/usr/local/gcc-7.2.0/bin/gcc -v

CMake中指定需要的GCC版本

可以直接在shell中对CC和CXX进行指定:

export CC=/usr/local/gcc-7.2.0/bin/gcc
export CXX=/usr/local/gcc-7.2.0/bin/g++
cmake /path/to/your/project
make

也可以直接在cmake的命令行参数中进行指定:

cmake -D CMAKE_C_COMPILER=/usr/local/gcc-7.2.0/bin/gcc -D CMAKE_CXX_COMPILER=/usr/local/gcc-7.2.0/bin/g++

5. 运行GCC7.2

因为我们不是替换安装的方式, 所以运行需要的库默认是没有被添加到系统路径下的, 我们还需要额外的一步操作才能让gcc8.3编译出的程序正常的运行:

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/gcc-7.2.0/lib64

可以直接将本行追加到~/.bashrc, 避免每次都单独写shell脚本追加该项. 注意更改~/.bashrc后记得重新连接终端, 让修改生效.

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值