修改預設gcc版本

2022-01-10 05:33:14 字數 1398 閱讀 3708

在以5.3為核心的ubuntu中編譯3.10的核心時,出現:

include/linux/compiler-gcc.h:106:30: fatal error: linux/compiler-gcc5.h錯誤

嘗試了網上說的將當前核心(5.3)的compiler-gcc.h複製為被編譯核心(3.10)的include/linux/compiler-gcc5.h,但是又報了新的錯誤,因此此條路作罷.

在stackoverflow裡查詢問題,有人提到是gcc版本的問題,gcc-4.8支援3.x的編譯,而我的本地gcc版本為5.0.但是我又不想解除安裝掉我的gcc-5.0,怕影響當前環境中的其它軟體的編譯,因此找了一下如何在linux上安裝多個gcc版本,並修改預設gcc版本.這樣就可以在編譯3.10的核心時使用gcc-4.8,編譯完成之後將gcc切換回gcc-5.0.

# 安裝gcc-4.8

sudo apt install gcc-4.8

# 設定gcc-4.8的優先順序

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

# 設定gcc-5的優先順序

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

# 修改系統中的預設gcc版本

sudo update-alternatives --config gcc

說明: 執行sudo update-alternatives --config gcc之後,就會跳出選項,輸入gcc版本對應的數字,就會選擇對應的gcc版本作為預設版本.

上述update-alternatives的用於修改系統中命令的實際執行程式.

--install 《鏈結》 《名稱》 《路徑》 《優先順序》 在系統中加入一組候選項

《名稱》: gcc 為在終端中執行的具體命令,本文中指gcc

《路徑》: /usr/bin/gcc-4.8和/usr/bin/gcc-5 為在終端中輸入命令後,具體的執行程式的路徑.本文中指在終端中輸入gcc,具體呼叫的程式路徑

《優先順序》: 40和50,是乙個整數,在自動模式下,這個數字越高的選項,其優先順序也就越高。

--config 《名稱》 列出 《名稱》 替換組中的可選項,並就使用其中哪乙個,徵詢使用者的意見。

《名稱》: 即上面說的終端中的具體命令, gcc

compile-an-old-linux-kernel-on-ubuntu-16-04-lts

編譯linux核心出現include/linux/compiler-gcc.h:106:30: fatal error: linux/compiler-gcc5.h錯誤

更改gcc預設版本 gcc版本降級 公升級

更改gcc預設版本 gcc版本降級 公升級 ubuntu系統公升級到16.04以後,gcc的版本變為6.2,編譯比較老的專案編譯不過,需要將gcc版本降級到ubunt14.04時候4.8版本.可以讓系統存在兩個gcc版本,4.8和6.2,但是預設的gcc版本為4.8 編譯老的專案,直接make 而更...

ubuntu修改預設python版本

查詢當前預設python路徑 which python usr bin python 查詢你要修改的python3.7路徑 which python3.7 usr bin python3.7 刪除之前預設的python路徑 sudo rm usr bin python 當前如果你再執行python ...

Mac修改預設python版本

弄了乙個mac pro 玩發現 mac預設的python版本為2.7 自己安裝了3.7的版本 修改 bash profile 檔案 檢視python3安裝 徑 which python3 library frameworks python.framework versions 3.7 bin pyt...