[精讚] [會員登入]
6064

[Centos7] 升級gcc/gcc-c++ 由5.8版升級到9.3版

Centos7 使用yum安裝的gcc只到4.8.5(2015年版本),想辦法網級到 9.3

分享此文連結 //n.sfs.tw/14840

分享連結 [Centos7] 升級gcc/gcc-c++ 由5.8版升級到9.3版 @新精讚
(文章歡迎轉載,務必尊重版權註明連結來源)
2020-12-04 01:52:33 最後編修
2020-12-03 15:35:49 By 張○○
 

自動目錄

需要用到更高版本的gcc,因此升級gcc及g++到9.3版

原系統

$  make --version
GNU Make 3.82
Built for x86_64-redhat-linux-gnu
Copyright (C) 2010  Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
$ gcc --version
$ g++ --version
g++ (GCC) 4.8.5 20150623 (Red Hat 4.8.5-44)
Copyright (C) 2015 Free Software Foundation, Inc.

# cat /etc/redhat-release
CentOS Linux release 7.3.1611 (Core)

Centos7 使用yum安裝的gcc只到4.8.5(2015年版本),想辦法升級到 9.3

# yum update gcc gcc-c++

安裝

安裝 scl , 這個程式可以指定使用應用程式包

# yum install centos-release-scl-rh

安裝 devtoolset,這裡面包含有更高版本的gcc等程式

目前最新的到9版,如果不行,可試試devtoolset-8或devtoolset-7的版本

# yum install devtoolset-9*

安裝完畢後指定應用程式包(by user)

$ scl enable devtoolset-9 bash

同上,啟動目前程序

$ source /opt/rh/devtoolset-9/enable

修改 /etc/rc.d/rc.local 開機啟動,最下面加入一行

source /opt/rh/devtoolset-9/enable

安裝完畢後確認版號

# make --version
GNU Make 4.2.1 <== make升到4版
Built for x86_64-redhat-linux-gnu
Copyright (C) 1988-2016 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>

# gcc --version
gcc (GCC) 9.3.1 20200408 (Red Hat 9.3.1-2) <== gcc,c++,g++都升到相同版號 9.3.1
Copyright (C) 2019 Free Software Foundation, Inc.

查看目前使用的gcc

$ which gcc
/opt/rh/devtoolset-9/root/usr/bin/gcc

查看套件資訊

# yum info devtoolset-9-gcc-c++

移除

如果需要的話

# yum remove devtoolset-9\* libasan libatomic libcilkrts libitm liblsan libtsan libubsan

編譯

可支援 -std=c++14及 -std=c++17 mode,請參考[2] 的使用說明。

 

參考資料

[1] https://qiita.com/hirohiro77/items/2bfb9e3dede09049c4f2

[2] https://access.redhat.com/documentation/en-us/red_hat_developer_toolset/9/pdf/user_guide/Red_Hat_Developer_Toolset-9-User_Guide-en-US.pdf

[3] https://access.redhat.com/documentation/en-us/red_hat_developer_toolset/9/html-single/user_guide/index

END

你可能感興趣的文章

為我的郵件伺服器建立SPF記錄 我的郵件伺服器寄出的信常會被放到垃圾信件匣中?試試加上SPF的記錄吧。

[Docker] oracle db + php 的安裝和使用 oracle 就是熟知的「甲古文」,從小聽到大但第一次接觸,真是非常陌生

[CentOS7] 使用ip neighbor指令來偵測修改其他的節點 使用ip neighbor指令來偵測修改其他的節點

[TCP] TCP關閉的四步程序 TCP關閉的四個步驟

在CISCO中打入中文(big5) cisco ios如果是由linux主機跳進去,我就不能打入中文,因為我的linux主機是utf8,而cisco的ios還是big5,中文字就打不進去

FIREFOX設定GOOGLE翻譯搜尋引擎 在火狐上設定google翻譯成為自己的搜尋引擎

隨機好文

[HP DL380G7] 生效啟動第3,4片網卡/開啟或關閉內建的網卡 HP DL380G7 預設第3,4片網卡裝完系統後找不到,難道是壞了?要怎麼辦?

[CodeIgniter3] 解決無法上傳特定檔案(.sb2)的問題 上傳時出現The filetype you are attempting to upload is not allowed,要怎麼解決?

魔球中小女孩唱的歌 The show 魔球中小女孩唱的歌 The show

正則表達式:Email名稱防止連續輸入點(.)及下底線(_) Email的名稱中要允許特殊符號,但又不允許連續出現的正則表達式

[Wildfly10] 發佈war檔 deploy war file onto wildfly10