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.
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
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.
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.
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.
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.
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.
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.