一、安裝多個gcc版本
在Linux系統下,可以通過安裝不同的gcc版本實現版本切換。首先,需要安裝需要的gcc版本。
例如,安裝gcc-4.8和gcc-8.3:
sudo apt-get install gcc-4.8
sudo apt-get install gcc-8
安裝完後,可以在終端中使用下面的命令查看已安裝的gcc版本:
dpkg --list | grep gcc
得到輸出結果如下:
ii gcc-4.8 4.8.5-4ubuntu2~14.04.1 amd64 GNU C compiler ii gcc-4.8-base:amd64 4.8.5-4ubuntu2~14.04.1 amd64 GCC, the GNU Compiler Collection (base package) ii gcc-8 8.4.0-1ubuntu1~18.04 amd64 GNU C compiler ii gcc-8-base:amd64 8.4.0-1ubuntu1~18.04 amd64 GCC, the GNU Compiler Collection (base package)
可以看到已經安裝的gcc版本的名稱和版本號。
二、使用update-alternatives切換版本
在安裝多個gcc版本後,可以使用update-alternatives工具切換版本。
使用下面的命令添加gcc-4.8為備選項:
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 50
其中50表示優先級,數字越大優先級越高。
再使用下面的命令添加gcc-8為備選項:
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 60
同樣,數字60表示優先級,數字越大優先級越高。這裡為了便於理解,將優先級設置為了不同的數字。
使用下面的命令查看gcc相關的備選項:
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-8 60 auto mode 1 /usr/bin/gcc-4.8 50 manual mode * 2 /usr/bin/gcc-8 60 manual mode Press <enter> to keep the current choice[*], or type selection number:
可以看到當前共有2個備選項,當前選中的是gcc-8。
使用對應的數字選擇備選項即可進行版本切換。
三、使用alias命令切換版本
在終端中使用alias命令可以方便地切換不同版本的gcc。
在.bashrc文件中添加下面的代碼:
alias gcc4='gcc-4.8'
alias gcc8='gcc-8'
之後在終端中輸入gcc4即可使用gcc-4.8,輸入gcc8即可使用gcc-8。
四、使用腳本自動切換版本
以上方法都需要手動切換版本,如果頻繁切換版本,可以使用腳本實現自動切換。
在腳本中使用update-alternatives命令切換版本即可,可以根據需要設置優先級。
下面是示例腳本:
#!/bin/bash
if [ -z "$1" ]
then
echo "No argument supplied, please input version number"
else
if [ "$1" == "4.8" ]
then
sudo update-alternatives --set gcc /usr/bin/gcc-4.8
elif [ "$1" == "8.3" ]
then
sudo update-alternatives --set gcc /usr/bin/gcc-8
else
echo "Invalid argument, please input 4.8 or 8.3"
fi
fi
該腳本可以根據輸入的參數來切換不同版本的gcc。
五、總結
以上就是gcc版本切換的幾種方法,可以根據實際情況選擇合適的方法,方便進行開發和測試。
原創文章,作者:LLKOV,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/333250.html