Compilers and Development Tools
The following features, enhancements, and changes related to compilers and development tools are introduced in this Oracle Linux 9 release.
Clang Resource Directory Moved
The Clang resource directory, where Clang stores its internal headers and libraries, has
been moved from /usr/lib64/clang/17 to
/usr/lib/clang/17.
elfutils Updated to Version 0.190
The elfutils 0.190 update instroduces the following changes:
-
libelf: This library now includes relative relocation (RELR). -
libdw: This library now functions with the.debug_[ct]u_indexsections. -Ds,--use-dynamic --symbol: You can use these options with theeu-readelftool to show symbols through the dynamic segment without using ELF sections.-
eu-readelf: This tool now shows.gdb_indexversion 9. -
eu-scrlines: This new tool generates a list of source files associated with a specified DWARF or ELF file. -
debuginfod: This server schema now compresses file name representations. You must reindex before you can use this feature.
systemtap Updated to Version 5.0
The systemtap 5.0 update instroduces the following changes:
-
Improved kernel-user transport.
-
Extended DWARF5 debuginfo format handling.
grafana-selinux Package Added
A grafana-selinux package, which contains an SELinux policy for
grafana-server, and which is installed by default with
grafana-server is added to the release. This update ensures that the
grafana-server runs as grafana_t SELinux type, rather than
as an unconfined_service_t SELinux type.
maven-openjdk21 Package Added
The maven:3.8 module stream now includes the
maven-openjdk21 subpackage, which provides the Maven JDK binding
for OpenJDK 21 and configures Maven to use the system OpenJDK 21.
libzip-tools Package Added
A libzip-tools package, which provides tools such as
zipcmp, zipmerge, and ziptool is
included in the update release.
cmake Updated to Version 3.26
The cmake package is updated to version 3.26. Notable changes include:
-
Addition of the C17 and C18 language standards.
-
cmakecan query the/etc/os-releasefile to identify the OS. -
cmakecan use CUDA 20 andnvtx3libraries. -
cmakecan use the Python stable application binary interface. -
Perl 5 can be used in the Simplified Wrapper and Interface Generator (SWIG) tool.
LLVM Toolset Updated to Version 17.0.6
- opaque pointers migration: completed
- legacy pass manager in middle-end optimization deprecated.
Rust Toolset Updated to Version 1.75.0
- Unlimitied Constant evaluation time
- Panic messages are now printed on their own lines without surrounding quotes, making them easier to read.
- Cargo registry authentication is enhanced so that authenticated registries require a credential provider.
- Improved expressiveness of the Rust language and trait system by stabilizing the
async fnandreturn_position_impl_trait_in_trait
Go Toolset Updated to Version 1.21.0
- Added min, max, and clear built-ins.
- Added official support for profile guided optimization.
- Precisely defined package initialization order.
- Improved type inferencing.
- Improved backwards compatibility.
See the Go upstream release notes for more information.
GCC Toolset 13 is Updated
GCC Toolset 13 is a compiler toolset that provides recent versions of development tools.
The toolset is available as an Application Stream in the form of a Software Collection in
the AppStream repository.
The following tools and versions are available in the GCC Toolset 13:
- GCC 13.2.1
- GDB 12.1
- binutils 2.40
- dwz 0.14
- annobin 12.32
To install the toolset, type:
sudo dnf install gcc-toolset-13To run a tool from GCC Toolset 13, type:
$ scl enable gcc-toolset-13 toolTo run a shell session where tool versions from GCC Toolset 13 override system versions of these tools, type:
scl enable gcc-toolset-13 bashpcp Updated to Version 6.2.0
The pcp package is updated to version 6.2.0. Notable changes
include:
pcp-htopprovides dynamic screens to include user-configurable tabs.pcp-atopprovides a new bar graph visualization mode.pmdaopenmetricsis updated to reduce transient instance logs and improve labeling.-
New tools are included:
pmlogredact: new command for archive anonymization.pcp-buddyinfo: reports Linux buddyinfo statistics.pcp-meminfo: reports Linux kernel memory statistics.pcp-netstat: reports networking statistics.pcp-slabinfo: reports Linux slabinfo kernel statistics.pcp-zoneinfo: reports Linux zoneinfo kernel statistics.