CentOS7 安装GCC14.2.0

若要安装很多版本较新的软件,发现在 make 的时候提示 gcc 版本不够高,例如 CentOS 7.4 自带的 gcc 4.8.5 版本是无法达到需求的,因此需要手动下载相对新的 gcc 源码进行安装。

安装步骤

1. 下载文件



wget https://ftp.tsukuba.wide.ad.jp/software/gcc/releases/gcc-14.2.0/

2. 解压



tar -zxvf gcc-14.2.0.tar.gz

3. 安装依赖



cd gcc-14.2.0
./contrib/download_prerequisites 

检查是否都下载成功
gettext-0.22.tar.gz: OK
gmp-6.2.1.tar.bz2: OK
mpfr-4.1.0.tar.bz2: OK
mpc-1.2.1.tar.gz: OK
isl-0.24.tar.bz2: OK

编译安装



cd gettext-0.22/
./configure --prefix=/usr/local/gettext-0.22
make -j8 && make install

cd ../gmp-6.2.1/
./configure --prefix=/usr/local/gmp-6.2.1
make -j8 && make install

cd ../mpfr-4.1.0
./configure --prefix=/usr/local/mpfr-4.1.0 --with-gmp=/usr/local/gmp-6.2.1
make -j8 && make install

cd ../mpc-1.2.1
./configure --prefix=/usr/local/mpc-1.2.1 --with-gmp=/usr/local/gmp-6.2.1 --with-mpfr=/usr/local/mpfr-4.1.0
make -j8 && make install

cd ../isl-0.24
./configure --prefix=/usr/local/isl-0.24  --with-gmp=/usr/local/gmp-6.2.1
# 提示 error: gmp.h header not found
# yum install gmp-devel
make -j8 && make install

rm gettext-0.22 -rf && rm gmp-6.2.1 -rf && rm mpfr-4.1.0 -rf && rm mpc-1.2.1 -rf && rm isl-0.24 -rf

4. 编译安装 GCC



cd ../
mkdir build && cd build
../configure --prefix=/usr/local/gcc-14.2.0 --with-gmp=/usr/local/gmp-6.2.1 --with-mpfr=/usr/local/mpfr-4.1.0 --with-mpc=/usr/local/mpc-1.2.1 --with-isl=/usr/local/isl-0.24 --with-gettext=/usr/local/gettext-0.22 --enable-threads=posix --enable--long-long --enable-languages=c,c++ --disable-checking --disable-multilib

	--enable-threads=posix	使 c++异常能处理多线程代码
	--enable--long-long	设定 gcc 数据类型大小
	–-enable-languages	表示你要让你的 gcc 支持那些语言
	–-disable-checking	生成的编译器在编译过程中不做额外检查,也可以使用 *–enable-checking=xxx*	来增加一些检查
	–-disable-multilib	不生成编译为其他平台可执行代码的交叉编译器。

# 整个编译过程,根据你的机器配置,可能要等十几分钟到一个小时不等;
# 8 为当前服务器每颗物理 CPU 中的核心数,以实际为准。
make -j 8
# ./gcc/cc1plus: error while loading shared libraries: libisl.so.23: cannot open shared object file: No such file or directory
# 共享库找不到,是因为当前安装目录不在扫描范围内
sudo ln -s /usr/local/isl-0.24/lib/libisl.so.23.1.0 /usr/lib64/libisl.so.23 && sudo ln -s /usr/local/mpfr-4.1.0/lib/libmpfr.so.6.1.0 /usr/lib64/libmpfr.so.6
# 其他找不到问题解决方式相同
yum -y remove gcc gcc-c++	# 安装前卸载原来的 GCC
make install
# 由此就成功安装了 14.2.0 版本的 GCC 编译器。需要注意的是,如果此时读者直接执行 gcc --version,则 GCC 版本仍会显示之前安装的版本。操作系统重启之后,GCC 版本就会自行更正过来。
耗时统计:11:41 - 12:24

5. 环境配置



echo 'export PATH=/usr/local/gcc-14.2.0/bin:$PATH' >> /etc/profile
source /etc/profile
gcc -v

6. 校验版本



strings libstdc++.so.6 | grep GLIBCXX

© 版权声明

☆ END ☆
喜欢就点个赞吧
点赞0 分享
图片正在生成中,请稍后...