コンパイラおよび開発ツール

このOracle Linux 10リリースでは、コンパイラおよび開発ツールに関連する次の機能、拡張機能、および変更が導入されています。

バージョン14.2でリリースされたGCC

GNU Compiler Collection (GCC)がバージョン14.2でリリースされました。

詳細は、upstream GCCのリリース・ノートを参照してください。

14 x86-64-v3のデフォルトでリリースされたGCC

GCC 14は、AMDとIntelの両方のx86-64-v3マイクロアーキテクチャ・レベルにデフォルト設定されています。このレベルでは、AVX命令セットやAVX2命令セット、積和演算(FMA)命令セットなど、特定の機能がデフォルトで有効になります。

バージョン12.55でリリースされたannobin

annobinがバージョン12.55でリリースされました。

バージョン2.41でリリースされたbinutils

binutilsがバージョン2.41でリリースされました。

Gnu ldリンカーの--section-ordering-fileオプション

ld.bfd--section-ordering-fileオプションとともに使用して、コードまたはデータのセクションをグループ化します。これらのセクションは、互いに近接していることによるメリットがあり、キャッシュ・ミスを減らすことができます。

プロファイリング・ツールで時間の経過とともにコードの使用を分析し、実行可能イメージ内のコードのグループ化を改善します。これにより、メモリー内のプログラムのレイアウトをより詳細に制御できます。

このオプションは、この機能をすでに提供しているgoldおよびlldリンカーとの互換性を強化します。

バージョン2.39でリリースされたglibc

GNU Cライブラリ(glibc)がバージョン2.39でリリースされました。

glibc AMD Zen 3および4の最適化

memcpyおよびmemmoveの最適化されたバージョンが、glibcの使用時にAMD Zen 3およびZen 4プロセッサによって使用されるようになりました。

以前は、AMD Zen 3およびZen 4プロセッサは、最適な選択肢に関係なく、memcpyおよびmemmoveライブラリ・ルーチンのEnhanced Repeat Move String (ERMS)バージョンを使用していました。

glibc Intel APX対応の機能の動的リンク

glibc動的リンカーは、Advanced Performance Extensions (APX)関連レジスタを保持します。

これにより、動的リンカー・トランポリンがIntel APXアプリケーションの非互換性の原因であった可能性がある以前の問題が解決されます。BIND_NOW実行可能ファイルを使用するか、標準呼出し規則のみを使用する以前の回避策は不要になりました。

ノート:

この変更により、スタックの最上部を超える領域が必要になります。厳密な領域制限がある場合は、スタック制限の調整または評価を検討してください。

バージョン14.2でリリースされたGDB

GNUデバッガ(GDB)がバージョン14.2でリリースされました。詳細は、https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=blob_plain;f=gdb/NEWS;hb=gdb-14.2-releaseを参照してください。

Oracle Linux 9システム・バージョンのGDB 10.2以降の変更点については、GCCツールセット12に付属のGDB 11.2のリリース・ノートとGCCツールセット13に付属のGDB 12.1のリリース・ノートを参照してください。

バージョン0.192でリリースされたelfutils

elfutilsがバージョン0.192でリリースされました。

バージョン5.2でリリースされたSystemTap

SystemTapトレースおよびプローブ・ツールがバージョン5.2でリリースされています。

詳細は、https://inbox.sourceware.org/systemtap/Zy640M7FbVZf-lwz@elastic.org/を参照してください。

バージョン3.24.0でリリースされたValgrind

Valgrindスイートがバージョン3.24.0でリリースされました。

使用可能なDyninstバージョン12.3.0

Dyninstライブラリがバージョン12.3.0に含まれています。詳細は、https://github.com/dyninst/dyninst/releases/tag/v12.3.0を参照してください。

バージョン2.6でリリースされたlibabigail

libabigailライブラリがバージョン2.6でリリースされました。

バージョン19.1.7でリリースされたLLVMツールセット

LLVMツールセットがバージョン19.1.7でリリースされました。

詳細は、https://discourse.llvm.org/t/llvm-19-1-7-released/84062を参照してください。

LLVMツールセットはローリング・アプリケーション・ストリームであり、最新バージョンのみがサポートされています。

llvm-docパッケージ更新

llvm-docパッケージにアップストリーム・ドキュメントへの参照が含まれるようになりました。

バージョン1.84でリリースされたRustツールセット

Rustツールセットがバージョン1.84になりました。

詳細は、https://blog.rust-lang.org/2025/01/30/Rust-1.84.1/を参照してください。

バージョン1.23でリリースされたGoツールセット

Goツールセットがバージョン1.23でリリースされました。

詳細は、https://tip.golang.org/doc/go1.23を参照してください。

Goツールセットはローリング・アプリケーション・ストリームであり、最新バージョンのみがサポートされています。

バージョン6.3.2でリリースされたPCP

PCPがバージョン6.3.2でリリースされました。

詳細は、https://github.com/performancecopilot/pcp/blob/main/CHANGELOGを参照してください。

Grafana-PCPプラグイン更新

grafana-pcpプラグインがバージョン5.2.2でリリースされました。

Redisを置き換えるValkey

Valkeyキー値ストアがRedisを置き換えます。Valkeyは、Redisと互換性のある、高パフォーマンスでオープン・ソースのインメモリー・データ構造ストアです。Valkeyは、文字列、ハッシュ、リスト、セットなどのサポートを含め、Redisと同じ機能を提供します。また、パフォーマンスやスケーラビリティの向上など、追加の機能や改善も含まれています。

RedisのValkeyへの置換えは、ほとんどのアプリケーションに対して透過的であり、既存のRedis構成とデータは、変更せずにValkeyで使用できます。

Valkeyは、Grafana、PCP、grafana-pcpプラグインなど、様々なOracle Linuxコンポーネントで使用されます。

zlibを置き換えるzlib-ng-compat

新しいzlib-ng-compatパッケージでは、様々なプログラムで使用される汎用の無損失データ圧縮ライブラリを提供します。この実装は、Oracle Linux 9に配布されたzlibよりも様々な利点を提供します。たとえば、zlib-ng-compatは、使用可能な場合にハードウェア・アクセラレーションを使用し、圧縮効率とパフォーマンスを向上させることができます。zlib-ng-compatは、APIおよびABI互換モードで構築され、zlibからのスムーズな移行が保証されます。

バージョン4.2.1でリリースされたSWIG

Simplified Wrapper and Interface Generator (SWIG)バージョン4.2.1が、CodeReady Linux Builder (CRB)リポジトリで使用できるようになりました。

バージョン21でリリースされたOpenJDK

OpenJDKバージョン21がOracle Linux 10のデフォルトのJava実装です。OpenJDK 21 Java Runtime EnvironmentおよびOpenJDK 21 Java Software Development Kitを提供するjava-21-openjdkパッケージを使用します。

debugeditバージョン5.1

Oracle Linux 10には、debugeditバージョン5.1が含まれています。詳細は、https://sourceware.org/debugedit/を参照してください。

cmake 3.30.5

Oracle Linux 10には、cmakeバージョン3.30.5が含まれています。

詳細は、https://cmake.org/cmake/help/latest/release/3.30.htmlを参照してください。

.NET 9.0および8.0

Oracle Linux 10には、.NETバージョン9.0および8.0が含まれています。

.NETは、自動メモリー管理と最新のプログラミング言語を備えた汎用開発プラットフォームです。

.NET 9.0リリースには、次のようないくつかの新機能と改善が含まれています:

  • パフォーマンスおよびスケーラビリティの改善

  • ネットワーキングやデータ・アクセスなどの様々なタスク用の新しいAPIおよびライブラリ

  • 様々なプラットフォームおよびアーキテクチャの強化されたサポート

.NET 8.0は、長期サポート(LTS)リリースであり、サポートされている安定したプラットフォームをアプリケーションに提供しています。

Oracle Linux 10に.NETをインストールするには、dnfパッケージ・マネージャを使用します。

たとえば、.NET 9.0をインストールするには、次のコマンドを実行します:

sudo dnf install dotnet9

.NETの詳細は、アップストリームのドキュメントを参照してください。