borg utilizes software collections from Software Collections to enable use of multiple versions of software on the same system, without affecting system-wide installed packages. This allows borg to offer different compilers, Python versions, etc for use without affecting the base operating system for the cluster.
To view a list of installed software collections, issue the command:
devtoolset-7 devtoolset-8 llvm-toolset-7 rh-python36 rust-toolset-7
To enable and enter a specific software collection, issue the command:
scl enable rh-python36 bash
Software Collections will restart your bash shell, and the requested software collection will be available. Please note that this works within SLURM batch files as well.
To permanently enable a collection for your user account, you can add the following lines to your .bashrc:
echo "source scl_source enable devtoolset-7" >> ~/.bashrc
Replace the "devtoolset-7" with your desired software collection. In addition, multiple toolsets can be chained together in that command, for example:
echo "source scl_source enable devtoolset-7 llvm-toolset-7 rh-python36" >> ~/.bashrc