可以让系统存在两个gcc版本,我安装的Ubuntu16.04默认gcc 5.6,但是为了编译linux0.11想要降级到gcc 3.4,原文是gcc 4.8和gcc 6.2切换。

按照如下步骤即可:

(1)在Ubuntu 16.04上安装老版gcc十分简单,直接用apt-get命令下载即可。

sudo apt-get install gcc-4.8

安装完成后输入命令gcc --verison查看gcc的版本,此时还是6.2。

(2)设置gcc的默认版本。

设置之前可以先输入命令ls /usr/bin/gcc* 查看gcc 4.8版本是否安装成功。

然后输入下面的命令设置默认版本:

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 100

最后的数字为优先级(越大越高),因为只有一个4.8版本作为alternatives,可以不要纠结数字,这样设就行了

(3)然后可以输入以下命令查看设置结果(非必须)

sudo update-alternatives --config gcc

因为只设置了一个,所以显示结果为:"链接组 gcc (提供 /usr/bin/gcc)中只有一个候选项:/usr/bin/gcc-4.8无需配置.",如果有多个则会显示一个按优先级的列表.

(4)最后再次输入命令gcc -version查看gcc的版本已经变成4.8啦...就成功啦.

(5)切换为6.2版本:现在默认版本已经是4.8版本,如果想用6.2版本,则gcc-6.2 将gcc6.2的优先级调大。

g++ 等其他软件也是这样设置进行版本升级/降级.

当以上设置不需要的时候输入以下命令删除:

sudo update-alternatives --remove gcc /usr/bin/gcc-4.8

update-alternatives的使用

update-alternatives命令常用来处理Linux中软件的多版本共存。其管理目录为/etc/alternatives

使用语法与参数

$ update-alternatives --help

用法:update-alternatives [ ...] 命令:--install [--slave ] ...

在系统中加入一组候选项。--remove 从 替换组中去除 项。--remove-all 从替换系统中删除 替换组。--auto 将 的主链接切换到自动模式。--display 显示关于 替换组的信息。--query 机器可读版的 --display .--list 列出 替换组中所有的可用候选项。--get-selections 列出主要候选项名称以及它们的状态。--set-selections 从标准输入中读入候选项的状态。--config 列出 替换组中的可选项,并就使用其中哪一个,征询用户的意见。--set 将 设置为 的候选项。--all 对所有可选项一一调用 --config 命令。 是指向 /etc/alternatives/ 的符号链接。(如 /usr/bin/gcc)是该链接替换组的主控名。(如 pager) 是候选项目标文件的位置。(如 /usr/bin/gcc-4.8) 是一个整数,在自动模式下,这个数字越高的选项,其优先级也就越高。

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐