🌐
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%
🌐
Pkgs.org
pkgs.org › download › scl-utils
Scl-utils Download for Linux (rpm) - pkgs.org
May 29, 2013 - Download scl-utils linux packages for AlmaLinux, CentOS, Fedora, Mageia, Rocky Linux
🌐
Codebar
tutorials.codebar.io › python › lesson0 › tutorial.html
Installation Guide
August 6, 2016 - Install scl-utils: yum install scl-utils · Install the extra repo needed for Pytyhon 3: rpm -Uvh https://www.softwarecollections.org/en/scls/rhscl/python33/epel-7-x86_64/download/rhscl-python33-epel-7-x86_64.noarch.rpm · Install Python 3 with this new repo: yum install Python33 (no the second 3 is not a typo) Run scn enable python3 /bin/bash.
🌐
Pkgs.org
pkgs.org › download › scl-utils-build
Scl-utils-build Download (RPM)
Download scl-utils-build packages for AlmaLinux, Amazon Linux, CentOS, Fedora, Mageia, Rocky Linux
🌐
Soton
linuxdesktops.soton.ac.uk › softwarecollections.html
Software collections (SCL) — Linux Desktops RHEL7 documentation
Sofware collections - or SCL - is a collection of ‘add-on’ software packages created and maintained by Red Hat. They were created in order to deliver more up to date versions of software to customers on Red Hat Enterprise Linux which typically does not update software “mid-life” of ...
🌐
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
The RPM package configures SCL repository. Step 1. Package downloading: Run the following command to download SCL rpm package and its dependency from CentOS official site:
Find elsewhere
🌐
Oracle
docs.oracle.com › cd › E37670_01 › E59096 › html › section_e3v_nbl_cr.html
1.5 Installing the Software Collection Library Utility From the Oracle Linux Yum Server
The scl-utils package, which provides the software collection library scl utility, is available in the Oracle Linux 6 and Oracle Linux 7 latest repositories on the Oracle Linux yum server.
🌐
UW PCE
uwpce-pythoncert.github.io › PythonCertDevel › supplemental › installing › python_for_linux.html
Setting Up Linux for Python — PythonCert 5.0 documentation
$ sudo yum -y install scl-utils · Then go to the software collections listing and click on the Python collection version you want to install. Probably this one: https://www.softwarecollections.org/en/scls/rhscl/rh-python35/ Note, you also need to know which version of CentOS you are using ...
🌐
Linux Man Pages
linux.die.net › man › 1 › scl
scl(1) - Linux man page
This manual page documents scl, a program which is an utility for running software packaged as a Software Collection.
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
🌐
Command Not Found
command-not-found.com › scl
command-not-found.com – scl
2.0.1-12.fc26.x86_64 : Utilities for alternative packaging · All systems · curl cmd.cat/scl.sh · CentOS · yum install scl-utils-1 · Fedora · dnf install scl-utils-1 · Dockerfile · dockerfile.run/scl · $ try this command on-line!
🌐
GitHub
github.com › sclorg › scl-utils-build-helpers
GitHub - sclorg/scl-utils-build-helpers · GitHub
Contribute to sclorg/scl-utils-build-helpers development by creating an account on GitHub.
Author   sclorg
🌐
RPMfind
rpmfind.net › linux › rpm2html › search.php
RPM resource scl-utils(x86-64)
The search service can find package by either name (apache), provides(webserver), absolute file names (/usr/bin/apache), binaries (gprof) or shared libraries (libXm.so.2) in standard path. It does not support multiple arguments yet · The System and Arch are optional added filters, for example ...
🌐
University of Edinburgh
computing.help.inf.ed.ac.uk › scl
Software Collections | Documentation
sclo-subversion19 - subversion 1.9.3 (allows access to working copies using the latest version 31 format - important for Ubuntu Focal forward compatibility)
🌐
Repology
repology.org › project › scl-utils › versions
scl-utils package versions - Repology
List of package versions for project scl-utils in all repositories