[精讚] [會員登入]
5006

[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

你可能感興趣的文章

NMAP 掃描方式說明 Nmap 的幾種掃瞄方式

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

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

FTP的主動模式及被動模式 FTP的服務常會被防火牆擋掉,所以對於主動和被動模式,需要很了解

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

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

我有話要說

>>

限制:留言最高字數1000字。 限制:未登入訪客,每則留言間隔需超過10分鐘,每日最多5則留言。

訪客留言

[無留言]

隨機好文

如何在linux下執行java 原生的java應用程式可以使用簡單的方法在console下面寫出來,適合作簡單的應用

[JAVA] JWS, JWT, JWE, JOSE是什麼? [JAVA] JWS, JWT, JWE, JOSE是什麼?非常的複雜,儘量來搞清楚..

[PHP] 檢查檔案是否是圖檔 使用getimagesize函數檢查檔案是否是圖檔

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

問問題 問問題其實內涵很深,我悟了很久才懂。 有人問題的目的並不一定是想要得到答案,有時只是純粹想問問題..