[精讚] [會員登入]
5971

[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

你可能感興趣的文章

[Analytics] Google analytics 如何刪除資源和應用程式 當不再需要統計的站台要刪除analytics的統計時,找不到在哪裡可以刪除,怎麼操作?

[Centos7] 升級gcc/gcc-c++ 由5.8版升級到9.3版 Centos7 使用yum安裝的gcc只到4.8.5(2015年版本),想辦法網級到 9.3

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

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

ical 的欄位(RFC2445) 最近研究 iCalendar,發現這是一個RFC2445,為了把ics塞到資料庫,得花點時間研究一下RFC。

DNS slave 要怎麼更新zone,和zone更新有關的指令。 DNS slave 要怎麼更新zone?

隨機好文

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

安裝SPHINX支援中文 新版本的 sphinx 和舊版不同,網路上很多範例和教學是不能用的。此文是安裝和設定方法分享

[Windows7] 移除IE10及移除IE11 Windows7 不得已的情況要移除IE11或IE10怎麼做?

詭異的創業思維 創業的思維中,有多少銀彈,有多少技術,有多少人脈,有多少時間等等,每個都要考慮進去,以熱忱建立的關係脆弱的像蘇打餅乾一樣..

海棉寶寶超泡杯演奏的sweet victory 章魚哥和海棉寶寶在超泡杯的演奏歌曲