参考博客:
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

在Ubuntu 16.04上安装GCC 7和G++ 7时遇到版本切换问题。g++被配置为gcc的附属,无法单独配置。通过`update-alternatives`命令尝试关联gcc和g++,但由于手动修改了g++-5的名称导致初次尝试失败。解决方法是删除g++-5,然后重新使用`--slave`选项关联gcc和g++,最终移除不需要的gcc-9和g++-9版本。
6227

被折叠的 条评论
为什么被折叠?



