Linux下更换gcc的版本

gcc编译器和g++编译器在哪里?

gcc编译器和g++编译器的位置一般在/usr/bin/目录下,这是gcc和g++可执行文件的位置,也就是gcc main.cpp -o main这个命令的可执行文件调用的具体路径

@ubuntu:~$ which gcc
/usr/bin/gcc
@ubuntu:~$ which g++
/usr/bin/g++
@ubuntu:~$ ls /usr/bin/gcc*
/usr/bin/gcc    /usr/bin/gcc-ar    /usr/bin/gcc-nm    /usr/bin/gcc-ranlib
/usr/bin/gcc-7  /usr/bin/gcc-ar-7  /usr/bin/gcc-nm-7  /usr/bin/gcc-ranlib-7
/usr/bin/gcc-8  /usr/bin/gcc-ar-8  /usr/bin/gcc-nm-8  /usr/bin/gcc-ranlib-8

@ubuntu:~$ ls /usr/bin/g++*
/usr/bin/g++  /usr/bin/g++-7  /usr/bin/g++-8

Ubnutu

在Ubnutu下,使用的Ubnutu镜像版本为Ubnutu18.04.6-deskop-amd64.iso

方法1

通过设置优先级的形式来更换gcc的版本,优先级最高的那个就是默认的gcc编译器

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 100
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 90
    
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-8 100
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-8 90

如果要卸载这些东西的话

sudo update-alternatives --remove-all gcc

方法2

一个笨办法,将gcc和g++的软链接替换,但是这种替换是绝对的

sudo ln -s /usr/bin/gcc-8 /usr/bin/gcc
sudo ln -s /usr/bin/g++-8 /usr/bin/g++
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐