Compilers and Development Tools

The following features, enhancements, and changes related to compilers and development tools are introduced in this Oracle Linux 10 release.

GCC Released at Version 14.2

GNU Compiler Collection (GCC) is released at version 14.2.

For more information, see upstream GCC release notes.

GCC Released at 14 x86-64-v3 Default

GCC 14 defaults to the x86-64-v3 microarchitecture level for both AMD and Intel. This level enables certain capabilities by default, such as the AVX and AVX2 instruction sets and the fused multiply-add (FMA) instruction set.

annobin Released at Version 12.55

annobin is released at version 12.55.

binutils Released at Version 2.41

binutils is released at version 2.41.

Gnu ld linker --section-ordering-file option

Use ld.bfd with the --section-ordering-file option to group sections of code or data that can benefit from being in proximity to each other and to reduce cache misses.

Analyze use of code over time with profiling tools then improve code grouping in the executable image. This provides more control over the layout of programs in memory.

This option also enhances compatibility with the gold and lld linkers, which already provide this feature.

glibc Released at Version 2.39

GNU C Library, glibc, is released at version 2.39.

glibc AMD Zen 3 and 4 Optimizations

Optimized versions of memcpy and memmove used by AMD Zen 3 and Zen 4 processors when using glibc.

Previously, AMD Zen 3 and Zen 4 processors occasionally used the Enhanced Repeat Move String (ERMS) version of the memcpy and memmove library routines, regardless of the most best choice.

glibc Intel APX-enabled Dynamic Linking of Functions

The glibc dynamic linker preserves Advanced Performance Extensions (APX) related registers.

This resolves a previous issue where a dynamic linker trampoline might have been a source of incompatibilities for Intel APX applications. The previous workaround of using the BIND_NOW executable or use only the standard calling convention, is no longer necessary.

Note:

More space is required beyond the top of the stack with this change. Consider adjusting or evaluating the stack limits if you have strict space limits.

GDB Released at Version 14.2

GNU Debugger (GDB) is released at version 14.2. See https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=blob_plain;f=gdb/NEWS;hb=gdb-14.2-release for more information.

For changes since the Oracle Linux 9 system version of GDB 10.2, see the release notes for the GDB 11.2 shipped in GCC Toolset 12 and the GDB 12.1 shipped in GCC Toolset 13.

elfutils Released at Version 0.192

elfutils is released at version 0.192.

SystemTap Released at Version 5.2

SystemTap tracing and probing tool is released at version 5.2.

See https://inbox.sourceware.org/systemtap/Zy640M7FbVZf-lwz@elastic.org/ for more information.

Valgrind Released at Version 3.24.0

The Valgrind suite is released at version 3.24.0.

Dyninst Version 12.3.0 Available

The Dyninst library in included at version 12.3.0. See https://github.com/dyninst/dyninst/releases/tag/v12.3.0 for more information.

libabigail Released at Version 2.6

The libabigail library is released at version 2.6.

LLVM Toolset Released at Version 19.1.7

The LLVM Toolset is released at version 19.1.7.

See https://discourse.llvm.org/t/llvm-19-1-7-released/84062 for more information.

LLVM Toolset is a rolling Application Stream and only the latest version is supported.

llvm-doc Package Update

The llvm-doc package now contains a reference to the upstream documentation.

Rust Toolset Released at Version 1.84

The Rust Toolset is now at version 1.84.

See https://blog.rust-lang.org/2025/01/30/Rust-1.84.1/ for more information.

Go Toolset Released at Version 1.23

The Go Toolset is released at version 1.23.

See https://tip.golang.org/doc/go1.23 for more information.

The Go Toolset is a rolling Application Stream and only the latest version is supported.

PCP Released at Version 6.3.2

PCP is released at version 6.3.2.

See https://github.com/performancecopilot/pcp/blob/main/CHANGELOG for more information.

Grafana-PCP Plugin Update

The grafana-pcp plugin is released at version 5.2.2.

Valkey Replaces Redis

The Valkey key-value store replaces Redis. Valkey is a high-performance, open-source, in-memory data structure store that's compatible with Redis. Valkey provides the same functionality as Redis, including support for strings, hashes, lists, sets, and more. It also includes additional features and improvements, such as improved performance and scalability.

The replacement of Redis with Valkey is transparent to most applications, and existing Redis configurations and data can be used with Valkey without modification.

Valkey is used by various Oracle Linux components, including Grafana, PCP, and the grafana-pcp plugin.

zlib-ng-compat Replaces zlib

The new zlib-ng-compat package provides a general-purpose lossless data compression library used by many different programs. This implementation provides various benefits over zlib distributed in Oracle Linux 9. For example, zlib-ng-compat can use hardware acceleration when available and enhances compression efficiency and performance. zlib-ng-compat is built in API and ABI compatible mode to ensure a smooth transition from zlib.

SWIG Released at Version 4.2.1

Simplified Wrapper and Interface Generator (SWIG) version 4.2.1 is now available in the CodeReady Linux Builder (CRB) repository.

OpenJDK Released at Version 21

OpenJDK version 21 is the default Java implementation for Oracle Linux 10. Use the java-21-openjdk packages, which provide the OpenJDK 21 Java Runtime Environment and the OpenJDK 21 Java Software Development Kit.

debugedit Version 5.1

Oracle Linux 10 includes debugedit version 5.1. For more information see https://sourceware.org/debugedit/.

cmake 3.30.5

Oracle Linux 10 includes cmake version 3.30.5.

See https://cmake.org/cmake/help/latest/release/3.30.html for more information.

.NET 9.0 and 8.0

Oracle Linux 10 includes .NET versions 9.0 and 8.0.

.NET is a general-purpose development platform that features automatic memory management and modern programming languages.

The .NET 9.0 release includes several new features and improvements, including:

  • Improved performance and scalability

  • New APIs and libraries for various tasks, such as networking and data access

  • Improved support for various platforms and architectures

.NET 8.0 is a Long-Term Support (LTS) release, providing a stable and supported platform for applications.

To install .NET on Oracle Linux 10, you can use the dnf package manager.

For example, to install .NET 9.0, you can run the following command:

sudo dnf install dotnet9

For more information on .NET, see the upstream documentation.