🌐
Red Hat
docs.redhat.com › en › documentation › red_hat_software_collections › 3 › html › packaging_guide › sect-enabling_support_for_software_collections
1.3. Enabling Support for Software Collections | Packaging Guide | Red Hat Software Collections | 3 | Red Hat Documentation
January 24, 2023 - To enable support for Software Collections on your system so that you can enable and build Software Collections, you need to have installed the packages scl-utils and scl-utils-build.
🌐
GitHub
github.com › sclorg › scl-utils
GitHub - sclorg/scl-utils: Tool to setup and run software from Software Collection environment · GitHub
Tool to setup and run software from Software Collection environment - sclorg/scl-utils
Starred by 15 users
Forked by 23 users
Languages   C 79.8% | Shell 15.2% | CMake 5.0%
🌐
Linuxcnf
linuxcnf.com › 2019 › 09 › how-to-enable-software-collections-scl.html
The Linux Guide: How to Enable Software Collections (SCL) yum repository on CentOS 7
It can be installed by below two methods. Method 1. The package to enable Software Collection SCL is available in CentOS 7 repository and it can be installed by yum command.
🌐
Incredibuild
docs.incredibuild.com › win › 10_23 › Linux Helper (SCL) Installation.htm
Linux Helper (SCL) Installation
docker run --detach --restart unless-stopped \ --hostname $HOSTNAME \ --name IncredibuildHelper \ --env COORD_IP=192.168.1.1 \ --network host \ public.ecr.aws/incredibuild/scl:latest_10.22.0
🌐
GitHub
github.com › sclorg › centos-release-scl
GitHub - sclorg/centos-release-scl: yum Configs and basic docs for Software Collections as delivered via the CentOS SCLo SIG. · GitHub
On CentOS, there are packages centos-release-scl and centos-release-scl-rh available in centos-extra repository, so for installing SCLo reposo on CentOS, run:
Starred by 70 users
Forked by 15 users
Languages   Shell
🌐
Softwarecollections
softwarecollections.org › en › docs
Quick Start — Software Collections
Find a Software Collection (SCL) you are interested in. You can browse through the available SCLs in our Directory. We will use the rh-python35 SCL as an example. On CentOS, install the SCL release package `centos-release-scl`:
🌐
CentOS
wiki.centos.org › AdditionalResources(2f)Repositories(2f)SCL.html
The Software Collections ( SCL ) Repository
In order to gain access to SCLs for CentOS, you need to install the CentOS Linux Software Collections release file.
🌐
Xmodulo
xmodulo.com › enable-software-collections-centos.html
How to enable Software Collections (SCL) on CentOS
September 23, 2020 - Let's say you want to install Python 3.3. ... A nice thing about the SCL is that installing a package from the SCL does NOT overwrite any system files, and is guaranteed to not cause any conflicts with other system libraries and applications.
🌐
Soton
linuxdesktops.soton.ac.uk › softwarecollections.html
Software collections (SCL) — Linux Desktops RHEL7 documentation
SCL packages are normal rpm software packages and thus can be installed via the usual tools, see Installing software for more information.
🌐
Princeton CS Guide
csguide.cs.princeton.edu › software › scl
Software Collections (SCL) | Department of Computer Science Computing Guide
$ scl --list devtoolset-3 devtoolset-8 httpd24 maven30 mysql55 rh-git29 rh-java-common rh-nodejs10 rh-php56 rh-python34 rh-python36
Find elsewhere
🌐
Red Hat
developers.redhat.com › blog › 2016 › 05 › 24 › three-easy-steps-to-get-started-with-software-collections-on-rhel
Three easy steps to get started with Software Collections on RHEL | Red Hat Developer
November 1, 2023 - There are three easy steps to get started with Software Collection: Run: $ yum-config-manager --enable rhel-7-server-optional-rpms · To do the same on an updated CentOS Linux 6/x86_64 or 7/x86_64 machine run: $ sudo yum install centos-release-scl ·
🌐
GitHub
gist.github.com › dasgoll › 42cc52cbac6fc6f5bdec
How to enable Software Collections (SCL) on Amazon/RHEL/CentOS · GitHub
March 27, 2019 - It's been a white, could you look into "Amazon Linux extras repository"? From here: Q. How do I install a software package from Amazon Linux extras repository? [https://aws.amazon.com/amazon-linux-2/faqs/] Copy link · scl-utils, and I'm not using amazon linux 2, I'm using amazon linux 1.
🌐
Lutron
support.lutron.com › us › en › instructions › skylark-scl-153p
Skylark SCL-153P Installation Instructions | Lutron
Explore our online installation guide for the Skylark SCL-153P. Find walkthrough tutorials, wiring diagrams, troubleshooting, and more.
🌐
Softwarecollections
softwarecollections.org › en
Software Collections — Software Collections
Need a newer version of Java or Python with your app? Use an existing SCL instead. Need to create a Software Collection for your project or product? The guide will show you how to modify the RPM spec file(s) for your project and create an easy-to-install Software Collection.
🌐
Synopsys
synopsys.com › support › licensing-installation-computeplatforms › licensing.html
Synopsys Licensing QuickStart Guide
February 18, 2026 - For entitled customers, SCL is available in the SolvNetPlus Download Center (from the list of products, choose Synopsys Common Licensing, then choose the desired SCL version). Linux users (only) will also need the Synopsys Installer, which is a separate download.
🌐
GitHub
github.com › robertdebock › ansible-role-scl
GitHub - robertdebock/ansible-role-scl: Install SCL on your system.
Install SCL on your system. Contribute to robertdebock/ansible-role-scl development by creating an account on GitHub.
Author   robertdebock
Top answer
1 of 5
93

In your ~/.bashrc or ~/.bash_profile Simply source the "enable" script provided with the devtoolset. For example, with the Devtoolset 2, the command is:

source /opt/rh/devtoolset-2/enable

or

source scl_source enable devtoolset-2

Lot more efficient: no forkbomb, no tricky shell

2 of 5
17

An alternative of source /opt/rh/devtoolset-4/enable is

source scl_source enable devtoolset-4

The above shell script scl_source is more elegant than using a hard coded path (may be different on another machine). However scl_source does less because /opt/rh/devtoolset-4/enable uses scl_source and other stuff.

To use scl_source you may have to upgrade package scl-utils

yum update scl-utils  # old scl-utils versions miss scl_source

Quick copy-paste

echo 'source scl_source enable devtoolset-4' >> ~/.bashrc
    # Do not forget to change the version ↑

Source code for curious people

An example of scl_source source code:
https://gist.github.com/bkabrda/6435016

The scl_source installed on my Red Hat 7.1

#!/bin/bash

_scl_source_help="Usage: source scl_source <action> [<collection> ...]

Don't use this script outside of SCL scriptlets!

Options:
    -h, --help    display this help and exit"

if [ $# -eq 0 -o $1 = "-h" -o $1 = "--help" ]; then
    echo "$_scl_source_help"
    return 0
fi


if [ -z "$_recursion" ]; then
    _recursion="false"
fi
if [ -z "$_scl_scriptlet_name" ]; then
    # The only allowed action in the case of recursion is the same
    # as was the original
    _scl_scriptlet_name=$1
fi
shift 1

if [ -z "$_scl_dir" ]; then
    # No need to re-define the directory twice
    _scl_dir=/etc/scl/conf
    if [ ! -e $_scl_dir ]; then
        _scl_dir=/etc/scl/prefixes
    fi
fi

for arg in "$@"; do
    _scl_prefix_file=$_scl_dir/$arg
    _scl_prefix=`cat $_scl_prefix_file 2> /dev/null`
    if [ $? -ne 0 ]; then
        echo "Can't read $_scl_prefix_file, $arg is probably not installed."
        return 1
    fi

    # First check if the collection is already in the list
    # of collections to be enabled
    for scl in ${_scls[@]}; do
        if [ $arg == $scl ]; then
            continue 2
        fi
    done

    # Now check if the collection isn't already enabled
    /usr/bin/scl_enabled $arg > /dev/null 2> /dev/null
    if [ $? -ne 0 ]; then
        _scls+=($arg)
        _scl_prefixes+=($_scl_prefix)
    fi;
done

if [ $_recursion == "false" ]; then
    _i=0
    _recursion="true"
    while [ $_i -lt ${#_scls[@]} ]; do
        _scl_scriptlet_path="${_scl_prefixes[$_i]}/${_scls[$_i]}/${_scl_scriptlet_name}"
        source "$_scl_scriptlet_path"
        if [ $? -ne 0 ]; then
            echo "Can't source $_scl_scriptlet_name, skipping."
        else
            export X_SCLS="${_scls[$_i]} $X_SCLS"
        fi;
        _i=$(($_i+1))
    done
    _scls=()
    _scl_prefixes=()
    _scl_scriptlet_name=""
    _recursion="false"
fi