ubuntu系統使用update-alternatives 管理多版本gcc/g++


1. 安裝gcc/g++
參考gcc/g++升級
2. 查看gcc/g++版本
ls /usr/bin/gcc* ,如下所示:
/usr/bin/gcc /usr/bin/gcc-ar-5 /usr/bin/gcc-nm-5 /usr/bin/gcc-ranlib-6 /usr/bin/gcc-5 /usr/bin/gcc-ar-6 /usr/bin/gcc-nm-6 /usr/bin/gcc-6 /usr/bin/gcc.bak /usr/bin/gcc-ranlib /usr/bin/gcc-ar /usr/bin/gcc-nm /usr/bin/gcc-ranlib-5
ls/usr/bin/g++*,如下所示:
/usr/bin/g++ /usr/bin/g++-5 /usr/bin/g++-6 /usr/bin/g++.bak
3. 查看gcc/g++軟鏈接指向
從下圖可看出目前的gcc不是通過update-alternatives管理的

4. 向系統中添加一個新的alternatives組
--install <link> <name> <path> <priority>
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5 40
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-5 40
注:最后那個數字代表優先級,默認選優先級高的
5. 查看gcc/g++軟鏈接指向
gcc軟鏈接變成了/etc/alternatives/gcc

查看/etc/alternatives/gcc軟鏈接指向,發現又鏈接回/usr/bin/gcc-6了,所以由此可看出update-alternatives為了管理方便增加了一層軟鏈接

6. 顯示命令<name>的信息及目標文件
--display <name>

7. 配置命令的版本
--config <name>

8. 移除系統中注冊的某個<name>的某個軟件版本<path>
--remove <name> <path>
sudo update-alternatives --remove gcc /usr/bin/gcc-5

EADME ate-alternatives 是ubuntu提供的管理多個版本軟件的⼯具,⾮常⽅便好⽤ 置多版本gcc 置多版本g++ 置多版本cuda 專欄

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-6 40

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 50

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

sudo update-alternatives --config gcc 1 2 3 4

sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-6 40

sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-7 50

sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.8 30

sudo update-alternatives --config g++

sudo update-alternatives --install /usr/local/cuda cuda /usr/local/cuda-10.0 50

sudo update-alternatives --install /usr/local/cuda cuda /usr/local/cuda-9.2 40

sudo update-alternatives --install /usr/local/cuda cuda /usr/local/cuda-9.0 30

sudo update-alternatives --install /usr/local/cuda cuda /usr/local/cuda-8.0 20

sudo update-alternatives --config cuda 1 2 3 4 5 1 sudo update-alternatives --remove cuda /usr/local/cuda-8.0


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM