ubuntu gcc多个版本切换

安装之前要卸载掉老版本的gcc、g++:

sudo apt-get remove gcc gcc-xx
sudo apt-get remove g++

安装gcc

sudo apt-get install gcc
eg:
sudo apt-get install gcc-4.9 gcc-4.9-multilib g++-4.9 g++-4.9-multilib

查看版本的命令是:

gcc --version

查看都有哪些版本:

ls /usr/bin/gcc*
or
sudo dpkg  -l  | grep  gcc

切换版本操作:

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.9 40 
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5 50
sudo update-alternatives --config gcc

然后会有以下选择:
在这里插入图片描述
同样也要设置一下g++的

sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-5 50 
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.9 40
sudo update-alternatives --remove gcc /usr/bin/gcc-4.9

如果想删除:
sudo update-alternatives --remove gcc /usr/bin/gcc-4.9

### 实现多个GCC版本间的切换Ubuntu操作系统中,为了满足不同的开发需求,可以安装并管理多个版本GCC编译器。这不仅有助于解决因特定项目依赖于某个GCC版本而产生的兼容性问题,还能够方便开发者测试代码在不同环境下的表现。 #### 安装所需的不同版本GCC编译器 要实现在同一台机器上拥有多种GCC版本的能力,首先需要确保这些版本已经被正确安装。对于希望使用的每一个GCC版本,都需要执行对应的安装指令: ```bash sudo apt update && sudo apt install gcc-<version> g++-<version> ``` 这里的`<version>`应替换为实际想要安装的具体版本号,比如`gcc-10`, `g++-10`用于安装GCC 10及其配套工具链[^1]。 #### 使用update-alternatives配置默认GCC版本 一旦成功安装了所需的各个GCC版本,则可通过Linux系统的`update-alternatives`机制轻松设置当前工作环境中所采用的默认GCC/G++版本。此过程涉及向系统注册新选项以及设定优先级等操作: ```bash sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-<version> <priority> sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-<version> <priority> ``` 其中,`<version>`代表已安装的目标GCC版本;`<priority>`是一个整数值,用来指示当存在多个候选者时哪个应该被选作默认项——通常情况下较高的数字意味着更高的优先权。例如,如果打算让GCC 10成为新的首选编译器,可将其关联命令赋予较大的权重如100[^3]。 #### 切换至指定版本作为全局默认值 完成了上述准备工作之后,便能利用简单的交互界面快速更改正在生效的那个GCC版本: ```bash sudo update-alternatives --config gcc sudo update-alternatives --config g++ ``` 运行以上任一条命令后会弹出一个列表供用户从中挑选期望激活的那一版GCC或G++。按照提示输入对应编号即可完成转换动作。 #### 验证当前使用的GCC版本 最后一步是确认变更是否已经生效。只需简单调用如下命令查看输出结果中的版本信息部分: ```bash gcc --version g++ --version ``` 若一切顺利的话,终端应当返回先前选定的新版本的相关详情。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值