【Linux 基础】gcc、g++多版本间的切换

发布时间 2023-10-14 22:29:27作者: FBshark

在make时可能出现版本过高的问题,因此需要进行版本切换。
gcc多版本间的切换(g++配置方法一样,gcc换为g++即可)
系统:ubuntu18

方法:根据需要同步设置gcc与g++间的版本号

1.gcc安装(多版本)
	sudo apt-get update
	sudo apt-get install gcc   ##安装最新版本,此处为7
	sudo apt-get install gcc-4.8   ##安装低版本

	ls /usr/bin/gcc*   # gcc在/usr/bin目录下
    #此处使用 ll 命令更好(可以看到软链接):
    ll /usr/bin/gcc*
    
	gcc -v  ##此时系统是7版本

2.版本间的切换
	2.1将版本4.8加入候选中
		sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 100
	2.2将版本7加入候选中
		sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 50

	2.3通过下面的指令来选择不同的gcc和g++的版本
		sudo update-alternatives --config gcc   
					
			》》》》》》》》》》》》》》选择版本号》》》》》》》》》》》》》》》》
			There are 2 choices for the alternative gcc (providing /usr/bin/gcc).

			  Selection    Path              Priority   Status
			------------------------------------------------------------
			* 0            /usr/bin/gcc-4.8   100       auto mode
			  1            /usr/bin/gcc-4.8   100       manual mode
			  2            /usr/bin/gcc-7     50        manual mode

			Press <enter> to keep the current choice[*], or type selection number: 
			》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》》

		gcc -v   #查看当前系统版本


3.注意
	#当切换使用了其他版本的gcc时,请务必保持g++的版本和gcc版本的一致性,
	 否则用cmake配置出来的项目遇到c++代码还是会用之前版本的gcc
	# 删除选项操作
	sudo update-alternatives --remove gcc /usr/bin/gcc-4.8

 

 

提示:

重点是使用 update-alternatives命令。

  • 将某个版本加入gcc/g++候选中的命令格式为:

    g++: sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-7 100
  • 确定候选 gcc 版本命令为:sudo update-alternatives --config gcc
    g++:sudo update-alternatives --config g++

  

 

转载自:

1. https://blog.csdn.net/xrinosvip/article/details/81177873

2.《gcc、g++多版本间的切换》