参考博客:
Ubuntu 16.04 GCC 7 & G++ 7 安装_calvinpaean的博客-CSDN博客
Linux实用技巧(1)安装g++版本7与g++多版本共存_YuYunTan的博客-CSDN博客_g++ version
- 前面一切正常,gcc的版本也成功切换,但切换g++时,出现了问题:
value@ubuntu:~$ sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-7 100 update-alternatives: error: alternative g++ can't be master: it is a slave of gcc
报错原因为,g++已经被配置成了gcc的附属,不能再单独配置版本切换
-
需要用--slave把gcc和g++关联起来即可
value@ubuntu:~$ sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 100 --slave /usr/bin/g++ g++ /usr/bin/g++
但中途由于手动修改了g++-5的名字:
value@ubuntu:~$ ll g++* -rwxr-xr-x 1 root root 1542952 Oct 5 2019 g++-5* lrwxrwxrwx 1 root root 23 Apr 21 2020 g++-7 -> aarch64-linux-gnu-g++-7* lrwxrwxrwx 1 root root 23 Jun 3 2021 g++-9 -> aarch64-linux-gnu-g++-9*
sudo cp g++-5 g++
导致第一次使用slave失败,未能成功
后续将其删除sudo mv /usr/bin/g++ /usr/bin/g++_b
再使用slave
最后删除gcc9,g++9,防止9版本的依赖造成影响sudo apt remove gcc-9 g++-9