intellij idea使用教程 ScrollView 华为鸿蒙 PyCharm 整数转换 哨兵模式 boost NEC formvalidator.js vue原理 java后台框架 jquery事件绑定方法 matlab注释一段 kali重启网卡 python加注释 python3下载安装 python文件 python中的循环 python调用自定义函数 python函数大全 python服务器开发 java队列 java获取当前月份 java中的继承 java面向对象 java框架学习 java安装教程 java连接mysql的jar包 java常用数据结构 linux系统如何安装 mac地址修改器 相机权限 复制到剪贴板 彩虹岛小草黑暗之矛 苹果x银色 ps出血 视频添加水印 海蜘蛛软路由 视频字幕制作软件 vbs代码
当前位置: 首页 > 学习教程  > 

CentOS7安装GCC-8.2.0

2020/10/16 17:45:36 文章标签: centos7安装gcc

CentOS7安装GCC-8.2.0笔者吐槽1.安装低版本的gcc2.依次安装三个依赖包3.配置环境变量4.编译gcc5.检查版本笔者吐槽 本人Linux小白,在自学完成一个项目的过程中摸爬滚打,跌跌撞撞花了好长时间才完成了最基础的gcc-8.2.0编译器配置,中间出现了…

CentOS7安装GCC-8.2.0

    • 笔者吐槽
    • 1.安装低版本的gcc
    • 2.依次安装三个依赖包
    • 3.配置环境变量
    • 4.编译gcc
    • 5.检查版本

笔者吐槽

本人Linux小白,在自学完成一个项目的过程中摸爬滚打,跌跌撞撞花了好长时间才完成了最基础的gcc-8.2.0编译器配置,中间出现了很多错误,但是在网上各路大神的博客也没有得到有效解决,最后还是在学习其他知识时偶然得到了解决方法,成功安装了gcc8.2.0。现在写下这篇博客跟大家分享一些我遇到的bug,如有错误欢迎指正,也希望这篇文章能帮到大家,一起学习共同进步。

1.安装低版本的gcc

yum install gcc gcc+ gcc-c++ -y
gcc -v

2.依次安装三个依赖包

先安装压缩包,输入以下命令:

wget ftp://ftp.gnu.org/gnu/gcc/gcc-8.2.0/gcc-8.2.0.tar.gz
wget ftp://ftp.gnu.org/gnu/gmp/gmp-6.1.2.tar.bz2
wget ftp://ftp.gnu.org/gnu/mpfr/mpfr-4.0.1.tar.bz2
wget ftp://ftp.gnu.org/gnu/mpc/mpc-1.1.0.tar.gz

然后按照顺序编译

mv gmp-6.1.2.tar.bz2 /opt
cd /opt
tar -xjvf gmp-6.1.2.tar.bz2
cd gmp-6.1.2
mkdir /usr/local/gmp-6.1.2
./configure   --prefix=/usr/local/gmp-6.1.2
make
make install

mv mpfr-4.0.1.tar.bz2 /opt
cd /opt
tar -xjvf mpfr-4.0.1.tar.bz2
cd mpfr-4.0.1
mkdir /usr/local/mpfr-4.0.1
./configure   --prefix=/usr/local/mpfr-4.0.1 --with-gmp=/usr/local/gmp-6.1.2 
make 
make install

mv mpc-1.1.0.tar.gz /opt
cd /opt
tar -xzvf mpc-1.1.0.tar.gz
cd mpc-1.1.0
mkdir /usr/local/mpc-1.1.0
./configure   --prefix=/usr/local/mpc-1.1.0 --with-gmp=/usr/local/gmp-6.1.2 --with-mpfr=/usr/local/mpfr-4.0.1
make
make install

安装gmp的时候可能会提示错误:
checking for suitable m4… configure: error: No usable m4 in $PATH or /usr/5bin (see config.log for reasons)
安装m4库就行

wget ftp://ftp.gnu.org/gnu/m4/m4-1.4.18.tar.bz2
mv m4-1.4.18.tar.bz2 /opt
cd /opt
tar -xjvf m4-1.4.18.tar.bz2
cd m4-1.4.18
./configure   --prefix=/usr/local/
make
make install

3.配置环境变量

vi ~/.bashrc

在最后一行写入

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/mpc-1.1.0/lib:/usr/local/gmp-6.1.2/lib:/usr/local/mpfr-4.0.1/lib

之后 :wq保存并退出
再使环境生效

source ~/.bashrc

4.编译gcc

mv gcc-8.2.0.tar.gz /opt
cd /opt
tar -xzvf gcc-8.2.0.tar.gz
cd gcc-8.2.0
mkdir gcc_built
mkdir  /usr/local/gcc-8.2.0 
cd gcc_built
../configure   --prefix=/usr/local/gcc-8.2.0 --with-gmp=/usr/local/gmp-6.1.2 --with-mpfr=/usr/local/mpfr-4.0.1 --with-mpc=/usr/local/mpc-1.1.0 --disable-multilib --enable--long-long --enable-threads=posix
make
make install

进行make&&make install操作的时间有点长,喝一杯咖啡歇息一下刚刚好~~

5.检查版本

gcc -v

如果最后一行显示gcc8.2.0则说明成功安装了,但笔者完成上述操作以后,发现版本依旧显示为gcc4.8.5,纳闷的很,一番跌跌撞撞摸爬滚打后终于还是找到了解决方法。

(1)这其实是升级gcc时,生成的动态库没有替换老版本 gcc 动态库导致的,将gcc最新版本的动态库替换系统中老版本的动态库就行了。

find / -name "libstdc++.so*"

在这里插入图片描述

(2) 将找到的动态库libstdc++.so.6.0.21复制到/usr/lib64

cp /usr/local/src/gcc-5.4.0/gcc-build-5.4.0/stage1-x86_64-unknown-linux-gnu/libstdc++-v3/src/.libs/libstdc++.so.6.0.21 /usr/lib64

(3). 切换工作目录至/usr/lib64,删除原来的软连接, 将默认库的软连接指向最新动态库。

cd /usr/lib64
rm -rf libstdc++.so.6
ln -s libstdc++.so.6.0.21 libstdc++.so.6

到这里才算是收工了。
在检查下gcc版本,发现终于是gcc-8.2.0了

在这里插入图片描述


本文链接: http://www.dtmao.cc/news_show_300082.shtml

附件下载

相关教程

    暂无相关的数据...

共有条评论 网友评论

验证码: 看不清楚?