gcc/g++ 多版本间切换
1. 查看 gcc/g++ 版本
| 12
 3
 4
 5
 
 | gcc -vg++ -v
 
 gcc --version
 g++ --version
 
 | 
| 12
 
 | ls /usr/bin/gcc*ls /usr/bin/g++*
 
 | 
2.安装gcc
	1获取源码压缩包
| 12
 3
 4
 
 | wget https://repo.huaweicloud.com/gnu/gcc/gcc-7.3.0/gcc-7.3.0.tar.gztar -zxvf gcc-7.3.0.tar.gz
 cd gcc-7.3.0
 ./contrib/download_prerequisites
 
 | 
	如果执行上述命令报错,需要执行如下命令在“gcc-7.3.0/”文件夹下下载依赖包:
| 12
 3
 4
 
 | wget http://gcc.gnu.org/pub/gcc/infrastructure/gmp-6.1.0.tar.bz2wget http://gcc.gnu.org/pub/gcc/infrastructure/mpfr-3.1.4.tar.bz2
 wget http://gcc.gnu.org/pub/gcc/infrastructure/mpc-1.0.3.tar.gz
 wget http://gcc.gnu.org/pub/gcc/infrastructure/isl-0.16.1.tar.bz2
 
 | 
	下载好上述依赖包后,执行以下命令,检查是否下载完成:
| 1
 | ./contrib/download_prerequisites	执行配置、编译和安装命令:
 | 
	执行配置、编译和安装命令:
| 12
 3
 
 | ./configure --enable-languages=c,c++ --disable-multilib --with-system-zlib --prefix=/usr/local/gcc7.3.0    make -j192
 make install
 
 | 
2安装gcc时候会占用大量临时空间,所以先执行下面的命令清空“/tmp”目录。
3. 手动切换
- 先将需要的版本添加到 update-alternatives 中,其中/root/neu/data1/envs请替换成你自己的实际安装目录
| 12
 3
 4
 5
 6
 
 | sudo update-alternatives --install /usr/local/bin/gcc gcc /usr/local/gcc7.3.0/bin/gcc 40
 sudo update-alternatives --install /usr/local/bin/gcc gcc /root/neu/data1/envs/gcc10.3.0/bin/gcc 50
 
 sudo update-alternatives --install /usr/local/bin/g++ g++ /usr/local/gcc7.3.0/bin/g++ 40
 sudo update-alternatives --install /usr/local/bin/g++ g++ /root/neu/data1/envs/gcc10.3.0/bin/g++ 50
 
 | 
若想删除,执行命令:
| 12
 
 | sudo update-alternatives --remove gcc /usr/local/gcc7.3.0/bin/gccsudo update-alternatives --remove g++ /usr/local/gcc7.3.0/bin/g++
 
 | 
| 12
 
 | sudo update-alternatives --config gccsudo update-alternatives --config g++
 
 | 
4.查看gcc的真实路径
| 1
 | ls -l /usr/local/bin/gcc
 | 
 /usr/bin/gcc -> /etc/alternatives/gcc
| 1
 | ls -l /etc/alternatives/gcc
 | 
/etc/alternatives/gcc -> /usr/local/gcc7.3.0/bin/gcc
手动修复符号链接
| 1
 | sudo ln -sf /usr/local/gcc7.3.0/bin/gcc /usr/bin/gcc
 | 
© 2025 CwbyWifsy 保留所有权利