centos7升级gcc版本
Posted wx5a20cf699eb6f
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了centos7升级gcc版本相关的知识,希望对你有一定的参考价值。
之前在centos7下遇到因gcc版本问题导致编译出来的内核模块插入后移除时报Device or resource busy异常,详见 https://blog.51cto.com/boytnt/3026897,当时排查出来编译时使用的gcc与系统gcc版本不一致导致的,今天试着升级一下gcc。 |
默认使用yum install gcc安装出来的gcc版本是4.8.5,可以升级到8.3.1,需要执行:
yum install centos-release-scl
yum install devtoolset-8-gcc*
安装完成后新版的gcc与g++安装在/opt/rh/devtoolset-8目录下,如果需要临时生效,可以执行:
source /opt/rh/devtoolset-8/enable
如果需要永久生效,可以把devtoolset-8里的gcc和g++链接到/usr/bin去:
mv /usr/bin/gcc /usr/bin/gcc-4.8.5
ln -s /opt/rh/devtoolset-8/root/bin/gcc /usr/bin/gcc
mv /usr/bin/g++ /usr/bin/g++-4.8.5
ln -s /opt/rh/devtoolset-8/root/bin/g++ /usr/bin/g++
再用gcc -v就能看到版本已变为8.3.1。此时编译出的内核模块就能正常rmmod卸载了。
以上是关于centos7升级gcc版本的主要内容,如果未能解决你的问题,请参考以下文章