Chapter 1. LLVM Toolset
LLVM Toolset is a Red Hat offering for developers on Red Hat Enterprise Linux (RHEL). It provides the LLVM compiler infrastructure framework, the Clang compiler for the C and C++ languages, the LLDB debugger, and related tools for code analysis.
LLVM Toolset is distributed as a part of Red Hat Developer Tools for Red Hat Enterprise Linux 7. For Red Hat Enterprise Linux 8, LLVM Toolset is available as a module. LLVM Toolset is available as packages for Red Hat Enterprise Linux 9.
1.1. LLVM Toolset components
The following components are available as a part of LLVM Toolset:
Name | Version | Description |
---|---|---|
clang | 12.0.1 | An LLVM compiler front end for C and C++. |
lldb | 12.0.1 | A C and C++ debugger using portions of LLVM. |
compiler-rt | 12.0.1 | Runtime libraries for LLVM and Clang. |
llvm | 12.0.1 | A collection of modular and reusable compiler and toolchain technologies. |
libomp | 12.0.1 | A library for using Open MP API specification for parallel programming. |
lld | 12.0.1 | An LLVM linker. |
python-lit | 12.0.1 | A software testing tool for LLVM- and Clang-based test suites. |
The CMake build manager is not part of LLVM Toolset. On Red Hat Enterprise Linux 7, CMake is provided as a separate package. On Red Hat Enterprise Linux 8, CMake is available in the system repository. On Red Hat Enterprise Linux 9, CMake is available in the system repository. For more information on how to install CMake, see Installing CMake on Red Hat Enterprise Linux.
1.2. LLVM Toolset compatibility
LLVM Toolset is available for Red Hat Enterprise Linux 7 and Red Hat Enterprise Linux 8 and Red Hat Enterprise Linux 9 on the following architectures:
- AMD and Intel 64-bit
- 64-bit ARM (RHEL 8 and RHEL 9)
- IBM Power Systems, Little Endian
- IBM Power Systems, Big Endian (Only RHEL 7)
- 64-bit IBM Z
1.3. Getting access to LLVM Toolset on Red Hat Enterprise Linux 7
To be able to install LLVM Toolset on Red Hat Enterprise Linux 7, you must access and enable Red Hat Developer Tools and Red Hat Software Collections repositories.
If these repositories are already attached to your system, see Installing LLVM Toolset.
Procedure
Install
Wget
by running:# yum install wget
Download the latest subscription data by running:
# subscription-manager refresh
Register your system by running:
# subscription-manager register
To register your system using a graphical user interface (GUI), follow the Registering and Unregistering a System guide.
Display a list of all available subscriptions and identify the pool ID by running:
# subscription-manager list --available
-
Find the pool ID on the line beginning with
Pool ID
. Attach the subscription that provides access to the
Red Hat Developer Tools
repository to your system by running:# subscription-manager attach --pool=<pool ID from the subscription>
-
Replace
<pool ID from the subscription>
with the pool ID you identified in the previous step.
-
Replace
Verify which subscriptions are attached to your system by running:
# sudo subscription-manager list --consumed
Enable the
rhel-7-variant-devtools-rpms
repository by running:# subscription-manager repos --enable rhel-7-<variant>-devtools-rpms
Replace
<variant>
with your Red Hat Enterprise Linux system variant:server
orworkstation
.Use
server
to access the widest range of development tools.
Enable the
rhel-variant-rhscl-7-rpms
repository by running:# subscription-manager repos --enable rhel-<variant>-rhscl-7-rpms
-
Replace
<variant>
with your Red Hat Enterprise Linux system variant:server
orworkstation
.
-
Replace
Add the Red Hat Developer Tools GPG key to your system by running:
# cd /etc/pki/rpm-gpg # wget -O RPM-GPG-KEY-redhat-devel https://www.redhat.com/security/data/a5787476.txt # rpm --import RPM-GPG-KEY-redhat-devel
Additional resources
- For more information on registering your system and associating it with subscriptions, see the Red Hat Subscription Management guides collection.
1.4. Installing LLVM Toolset
Complete the following steps to install LLVM Toolset including all development and debugging tools as well as dependent packages.
Prerequisites
-
On Red Hat Enterprise Linux 7, a subscription providing access to the Red Hat Developer Tools content set is attached to your system.
To attach the subscription, see Getting access to LLVM Toolset on Red Hat Enterprise Linux 7. - All available Red Hat Enterprise Linux updates are installed.
Procedure
On Red Hat Enterprise Linux 7, install the llvm-toolset-12.0
collection by running:
# yum install llvm-toolset-12.0
On Red Hat Enterprise Linux 8, install the llvm-toolset
module by running:
# yum module install llvm-toolset
On Red Hat Enterprise Linux 9, install the llvm-toolset
package by running:
# dnf install llvm-toolset
1.5. Installing the CMake build manager
The CMake build manager is a tool that manages the build process of your source code independently from your compiler. CMake can generate a native build environment to compile source code, create libraries, generate wrappers, and build executable files.
Complete the following steps to install the CMake build manager.
Prerequisites
-
LLVM Toolset is installed.
For more information, see Installing LLVM Toolset.
Procedure
To install CMake, run the following command:
- On Red Hat Enterprise Linux 7:
# yum install llvm-toolset-{llvm-ts-cmake-ver-rhel7}-cmake
- On Red Hat Enterprise Linux 8:
# yum install cmake
- On Red Hat Enterprise Linux 9:
# dnf install cmake
Additional resources
- For more information on the CMake build manager, see the official CMake documentation overview About CMake.
For an introduction to using the CMake build manager, see:
- The CMake Reference Documentation Introduction.
- The official CMake documentation CMake Tutorial.
1.6. Installing LLVM Toolset documentation
You can install documentation for LLVM Toolset on your local system.
Prerequisites
-
LLVM Toolset is installed.
For more information, see Installing LLVM Toolset.
Procedure
To install the llvm-doc
package, run the following command:
On Red Hat Enterprise Linux 7:
# yum install llvm-toolset-12.0-llvm-doc
You can find the documentation under the following path:
/opt/rh/llvm-toolset-12.0/root/usr/share/doc/llvm-toolset-12.0-llvm-12.0/html/index.html
.On Red Hat Enterprise Linux 8:
# yum install llvm-doc
You can find the documentation under the following path:
/usr/share/doc/llvm/html/index.html
.On Red Hat Enterprise Linux 9:
# dnf install llvm-doc
You can find the documentation under the following path:
/usr/share/doc/llvm/html/index.html
.
1.7. Installing CMake documentation
You can install documentation for the CMake build manager on your local system.
Prerequisites
-
CMake is installed.
For more information, see Installing the CMake build manager.
Procedure
To install the cmake-doc
package, run the following command:
On Red Hat Enterprise Linux 7:
# yum install llvm-toolset-12.0-cmake-doc
You can find the documentation under the following path:
opt/rh/llvm-toolset-12.0/root/usr/share/doc/llvm-toolset-12.0-cmake-3.6.2/html/cmake.html
.On Red Hat Enterprise Linux 8:
# yum install cmake-doc
You can find the documentation under the following path:
/usr/share/doc/llvm/html/cmake.html
.On Red Hat Enterprise Linux 9:
# dnf install cmake-doc
You can find the documentation under the following path:
/usr/share/doc/llvm/html/cmake.html
.
1.8. Additional resources
- For more information on LLVM Toolset, see the official LLVM documentation.