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 theeu-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 andnvtx3
libraries. -
cmake
can 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 fn
andreturn_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-13
To run a tool from GCC Toolset 13, type:
$ scl enable gcc-toolset-13 tool
To run a shell session where tool versions from GCC Toolset 13 override system versions of these tools, type:
scl enable gcc-toolset-13 bash
pcp
Updated to Version 6.2.0
The pcp
package is updated to version 6.2.0. Notable changes
include:
pcp-htop
provides dynamic screens to include user-configurable tabs.pcp-atop
provides a new bar graph visualization mode.pmdaopenmetrics
is 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.