新 Red Hat 編譯器工具箱:Clang、LLVM、GCC 等
為了讓開發者用到***的、穩定版本的開發工具,Red Hat 每年會發布兩次編譯器工具箱、腳本語言、開源數據庫等工具的更新。這些產品被封裝為 Red Hat 軟件集合(腳本語言、開源數據庫、Web工具等),Red Hat 開發工具箱(GCC)以及最近添加的編譯器工具箱 Clang / LLVM、Go 和 Rust。這些都是可以通過 yum 安裝的,并且包含在大多數 Red Hat 企業版 Linux 和所有開發者訂閱中。大多數 Red Hat 軟件集合和 Red Hat 開發人員工具箱組件也可作為 Linux 容器映像用于 Red Hat 企業版 Linux、OpenShift 容器平臺等的混合云開發。
新增和更新的編譯器工具箱如下:
新版本 GCC 編譯器工具箱:帶 GCC 7.3 的 Red Hat 開發者工具箱
這是 GCC 7 ***的穩定上游更新,鼓勵開發者工具箱(DTS)用戶更新到 DTS 7.1。
***的 GNU 編譯器集合主要版本 GCC 7.3 帶來了大量的新功能,包括對當前 C ++ 17草案的實驗性支持,更好的診斷和改進的優化器,以及許多新的內部和程序間的優化。就診斷而言,GCC 7 帶來了改進的定位、位置范圍,對拼寫錯誤的標識符的建議,選項名稱,修復提示和新警告。
DTS 7適用于以下體系結構:
-
x86_64 (RHEL 6 & 7 )
-
ppc64le (RHEL 6)
-
aarch64 (RHEL 6)
-
s390x (RHEL 6)
在哪里可以找到其他版本的 GCC 和 DTS?
-
DTS 6.1 has GCC version 6.3
-
DTS 4.1 has GCC version 5
-
(There is no DTS 5)
-
RHEL7 has GCC version 4.8
-
RHEL6 has GCC version 4.4
-
Updated DTS tools in DTS 7
Linux 容器映像:rhscl-beta / devtoolset-7-toolchain-rhel7
新版本的 Clang 和 LLVM 編譯器工具箱:Clang 和 LLVM 5.0
Clang 是“LLVM原生”C / C ++ / Objective-C 編譯器,旨在提供驚人的快速編譯、非常有用的錯誤和警告消息,并為構建優秀的源代碼級工具提供平臺。 Clang 靜態分析器是一個可以自動發現代碼中的錯誤的工具,并且它是使用 Clang 前端作為庫來解析 C / C ++ 代碼的工具。 LLVM 項目是模塊化和可重用的編譯器和工具鏈技術的集合。 LLVM Core 庫提供了一個獨立于目標的優化器,以及對RHEL CPU體系結構的代碼生成支持。
Clang 和 LLVM 工具箱將作為 RHEL 7 的技術預覽版發布在開發者工具項目中。鼓勵用戶使用和評估編譯器,但不建議用于生產。
Clang 和 LLVM 工具箱作為 RHEL 7 的技術預覽版發布,適用于:
-
x86_64
-
ppc64le
-
aarch64
-
s390x
本發行版包含以下軟件包:
-
llvm-toolset-7-llvm
-
llvm-toolset-7-clang
新版本 Go 編譯器工具箱:Golang 1.8.7
Go 工具箱的這個發行版引入了新版本的 Golang1.8.7 編譯器,供 RHEL 客戶和合作伙伴使用。
Go 是富有表現力、簡潔、干凈和高效的。其并發機制使編寫充分利用多核和聯網機器的程序變得容易,而其新穎類型系統則可實現靈活的模塊化程序構建。快速編譯為機器代碼,但具有垃圾收集的便利性和運行時反射的能力。它是一種快速、靜態類型的編譯語言,感覺像是一種動態類型的解釋型語言。
目前,RHEL 7 的可選渠道中提供了 Golang 編譯器。長期來看,可選項中的編譯器將被放棄,以支持開發者工具中的這個新 Go 工具箱。
RHEL 開發人員現在擁有上游 Go 編譯器的***穩定版本,可用于 RHEL 7 上的應用程序開發。Go 工具箱將作為技術預覽版在開發者工具中發布。鼓勵客戶使用和評估編譯器,但不建議用于生產。
Go 工具箱作為 RHEL 7 的技術預覽版發布,適用于:
-
x86_64
-
ppc64le
-
aarch64
-
s390x
包名:go-toolset-7-golang
新版本 Rust 編譯器工具箱:Rust 1.24
Rust 工具箱的***個版本基于 Rust 1.20。
Rust 是由 Mozilla 和志愿者社區創建的開源系統編程語言,旨在幫助開發人員創建快速、安全的應用程序,充分利用現代多核處理器的強大功能。它可以防止段錯誤并確保線程安全,所有這些都以簡單易學的語法表達。此外,Rust 還提供零成本抽象、移動語義,保證內存安全,線程無數據競爭,基于特征的泛型,模式匹配,類型推斷和高效的 C 綁定,以及最小的運行時大小。
Cargo 是 Rust 的包管理器和構建工具,它允許 Rust 項目聲明具有特定版本要求的依賴項。Cargo 將解析完整的依賴圖,根據需要下載軟件包,并構建和測試整個項目。
Rust 在 RHSCL 3.0(2017年末)添加到 RHEL 開發者工具渠道。
Rust 工具箱作為 RHEL 7 的技術預覽版發布,適用于:
-
x86_64
-
ppc64le
-
aarch64
-
s390x
本發行版包含以下軟件包:
-
rust-toolset-7
-
rust-toolset-7-rust
-
rust-toolset-7-cargo