ubuntu设置默认gcc版本
想看精简版的直接看大佬的这篇,本文在这篇命令基础上贴了每一步的操作,可和我的截图对比步骤: blog.csdn.net/uniqueyyc/a…
先查看下update-alternatives config:发现暂时未添加任何gcc软链接
test@test-Vostro-3268:~$ sudo update-alternatives --config gcc
update-alternatives: error: no alternatives for gcc
查看已安装的gcc版本:4.7和9
test@test-Vostro-3268:~$ dpkg -l | grep gcc
ii gcc 4:9.3.0-1ubuntu2 amd64 GNU C compiler
ii gcc-10-base:amd64 10.2.0-5ubuntu1~20.04 amd64 GCC, the GNU Compiler Collection (base package)
ii gcc-10-base:i386 10.2.0-5ubuntu1~20.04 i386 GCC, the GNU Compiler Collection (base package)
ii gcc-4.7 4.7.3-12ubuntu1 amd64 GNU C compiler
ii gcc-4.7-base:amd64 4.7.3-12ubuntu1 amd64 GCC, the GNU Compiler Collection (base package)
ii gcc-9 9.3.0-17ubuntu1~20.04 amd64 GNU C compiler
ii gcc-9-base:amd64 9.3.0-17ubuntu1~20.04 amd64 GCC, the GNU Compiler Collection (base package)
ii gcc-9-multilib 9.3.0-17ubuntu1~20.04 amd64 GNU C compiler (multilib support)
ii ... ... ... ...
test@test-Vostro-3268:~$
将4.7添加软链,会提示你当前只有一个gcc选项。
test@test-Vostro-3268:~$ sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.7 30 --slave /usr/bin/g++ g++ /usr/bin/g++-4.7
update-alternatives: using /usr/bin/gcc-4.7 to provide /usr/bin/gcc (gcc) in auto mode
test@test-Vostro-3268:~$ sudo update-alternatives --config gcc
There is only one alternative in link group gcc (providing /usr/bin/gcc): /usr/bin/gcc-4.7
Nothing to configure.
将9也添加软链。如果–install指令里的数越大,则优先级越高。4.7的级别30大于9的级别20,故而查看config可见当前默认使用gcc-4.7。
test@test-Vostro-3268:~$ sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 20 --slave /usr/bin/g++ g++ /usr/bin/g++-9
test@test-Vostro-3268:~$ 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.7 30 auto mode
1 /usr/bin/gcc-4.7 30 manual mode
2 /usr/bin/gcc-9 20 manual mode
Press <enter> to keep the current choice[*], or type selection number: 1
如果在config里,输入选项2,则会将系统默认调用的gcc版本定为9。故而有这两种设置gcc调用优先级的方法。
test@test-Vostro-3268:~$ 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.7 30 auto mode
* 1 /usr/bin/gcc-4.7 30 manual mode
2 /usr/bin/gcc-9 20 manual mode
Press <enter> to keep the current choice[*], or type selection number: 2
update-alternatives: using /usr/bin/gcc-9 to provide /usr/bin/gcc (gcc) in manual mode
test@test-Vostro-3268:~$ 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.7 30 auto mode
1 /usr/bin/gcc-4.7 30 manual mode
* 2 /usr/bin/gcc-9 20 manual mode
Press <enter> to keep the current choice[*], or type selection number: 1
update-alternatives: using /usr/bin/gcc-4.7 to provide /usr/bin/gcc (gcc) in manual mode
test@test-Vostro-3268:~$
删除软链接:
test@test-Vostro-3268:~$ sudo update-alternatives --remove gcc /usr/bin/gcc-9
test@test-Vostro-3268:~$ sudo update-alternatives --config gcc
There is 1 choice for the alternative gcc (providing /usr/bin/gcc).
Selection Path Priority Status
------------------------------------------------------------
0 /usr/bin/gcc-4.7 30 auto mode
* 1 /usr/bin/gcc-4.7 30 manual mode
Press <enter> to keep the current choice[*], or type selection number: 0
今天的文章ubuntu设置默认gcc版本分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/18854.html