CentOS环境,默认的gcc版本是4.*的。不少clang高级用法语法无法支持。
因此,如遇编译源码安装某些软件提示语法错误时候,多数情况下,需要升级gcc到高级版本。
1. 下载一个高版本的GCC,比如:7.4.0
wget http://www.netgull.com/gcc/releases/gcc-7.4.0/gcc-7.4.0.tar.gz
2. 解压缩,进入目录
tar xf gcc-7.4.0.tar.gz
cd gcc-7.4.0
3. 下载依赖文件;
./contrib/download_prerequisites
会有三个文件下载下来:gmp-6.1.0.tar.gz,mpfr-3.1.4.tar.gz,mpc-1.0.3.tar.gz
4. 新建一个build目录,进入其中,准备build;
mkdir build && cd build
5. 预配置;
../configure -enable-checking=release -enable-languages=c,c++ -disable-multilib
6. 编译并安装,-j 参数后面设置几路并行编译,一般是内核的两倍,别太多。如果不加-j 会特别缓慢。
make –j 4 && make install
7. 验证结果:
gcc –v ; g++ -v
出现版本号都是7.4.0的,就对了。
8. 必要的修改
cd /usr/bin/ && rm –f cc && ln –s /usr/local/bin/gcc cc