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

  • -Ds, --use-dynamic --symbol: You can use these options with the eu-readelf tool to show symbols through the dynamic segment without using ELF sections.
  • eu-readelf: This tool now shows .gdb_index version 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.

  • cmake can query the /etc/os-release file to identify the OS.

  • cmake can use CUDA 20 and nvtx3 libraries.

  • cmake can use the Python stable application binary interface.

  • Perl 5 can be used in the Simplified Wrapper and Interface Generator (SWIG) tool.