Red Hat Developer Toolset
Supported GCC updates along with other development tools
Introduction and prerequisites
In this tutorial, you will install the GNU Compiler Collection 8.2 from the Red Hat Developer Toolset (RHDTS) and build a simple C++ Hello World application. This tutorial should take less than 30 minutes to complete.
Before you begin, you will need a current Red Hat Enterprise Linux (RHEL) workstation or server subscription that allows you to download software and get updates from Red Hat. If you don’t have an active subscription, register and obtain the RHEL Developer Suite (includes the RHEL server) from here.
If you encounter difficulties at any point, see Troubleshooting and FAQ.
Learn more about Red Hat Software Collections
Red Hat Software Collections (RHSCL) deliver the latest stable versions of dynamic languages, open source databases, and web development tools that can be deployed alongside those included in RHEL. RHSCL is available with select RHEL subscriptions and has a three-year life cycle to allow rapid innovation without sacrificing stability. For more information:
Red Hat Software Collections 3.6 Packaging Guide — The packaging guide for RHSCL explains the concept of software collections, documents the
sclutility, and provides a detailed explanation of how to create a custom software collection or extend an existing one.
Red Hat Software Collections 3.6 Release Notes — The release notes for RHSCL document known problems, possible issues, and other important information available at the time of release of the content set. They also contain useful information on installing, rebuilding, and migrating.
How to use Red Hat Software Collections (RHSCL) or Red Hat Developer Toolset (RHDTS) — This article lists which Red Hat Enterprise Linux subscriptions include access to RHSCL and RHDTS.
You can view the list of packages available in RHSCL by running:
$ yum --disablerepo="*" --enablerepo="rhel-server-rhscl-7-rpms" list available
Developing with Red Hat Enterprise Linux
Red Hat Enterprise Linux 7 Developer Guide — The developer guide for Red Hat Enterprise Linux 7 provides an introduction to application development tools and using source code management tools such as Git in Red Hat Enterprise Linux 7.
Become a Red Hat developer: developers.redhat.com
Red Hat delivers the resources and ecosystem of experts to help you be more productive and build great solutions. Register for free at developers.redhat.com.
Troubleshooting and FAQ
As a developer, how can I get a Red Hat Enterprise Linux subscription that includes Red Hat Software Collections and Developer Toolset?
Developers can get a no-cost Red Hat Enterprise Linux Developer Suite subscription for development purposes by registering and downloading through developers.redhat.com. We recommend you follow our Getting Started Guide which covers downloading and installing Red Hat Enterprise Linux on a physical system or virtual machine (VM) using your choice of VirtualBox, VMware, Microsoft Hyper-V, or Linux KVM/Libvirt. For more information, see Frequently asked questions: no-cost Red Hat Enterprise Linux Developer Suite.
I can’t find the RHSCL repository on my system.
Some Red Hat Enterprise Linux subscriptions do not include access to RHSCL. For a list of what subscriptions include RHSCL see How to use Red Hat Software Collections (RHSCL) or Red Hat Developer Toolset (RHDTS).
The name of the RHSCL repository depends on whether you have a server or workstation version of RHEL installed. You can use
subscription-managerto view the available software repositories and verify that you have access to RHSCL:
$ su - # subscription-manager repos --list | egrep rhscl
When I run
yum install devtoolset-7 (or devtoolset-8), it fails due to a missing dependency.
Some RHSCL collections require packages that are in the optional RPMs repository, which is not enabled by default. See Step 1 above, for how to enable both the optional RPMs and RHSCL repositories.
How do I install and use Eclipse IDE with Developer Toolset?.
Follow these instructions to install Eclipse IDE for use with RHDTS.
Which version of GCC am I using?
I’m getting the older GCC that came with RHEL instead of the newer DTS version.
How do I include the DTS GCC in my path?
The Red Hat Developer Toolset uses RHSCL to install a parallel set of packages in
/opt/rhwhere they will not override the system packages that come with Red Hat Enterprise Linux.
which g++to see which compiler is in your path. The RHDTS GCC executable path will begin with
/opt/rh. Alternatively, use
g++ -vto confirm that the version number is the correct one for RHDTS.
$ which g++ /opt/rh/devtoolset-7/root/usr/bin/gcc $ g++ -v g++ (GCC) 7.2.1 20170729 (Red Hat 7.2.1-1)
g++ -vshows a different version, you need to run
scl enableto add RHDTS GCC and the rest of RHDTS to your environment.
$ scl enable devtoolset-7 bash
How can I view the manual pages for the DTS version of GCC?
When you use
scl enable, the manual page search path, MANPATH, is updated. This is in addition to the other environment variables that are updated which include PATH, and LD_LIBRARY_PATH.
$ scl enable devtoolset-7 bash $ man g++
Note: It is possible to use
scl enablefor a specific command. This might be handy if you want to compare the manual page differences between versions.
$ scl enable devtoolset-7 'man g++'
How do I find out which other packages are available in the Red Hat Developer Toolset?
You can view the list of packages with the following command:
# yum list available devtoolset-7-\*
How can I find out what RHSCL packages are installed?
scl --listwill show the list of RHSCL packages that have been installed, whether they are enabled or not.
$ scl --list devtoolset-7 rh-java-common
Build Something Today
Let's walk through everything you need to build your first application.