2.9. Commonly Used Path Redefinitions
This section lists environment variables commonly used to redefine paths in the
enable
scriptlet to set up the Software Collection environment. They are also used to specify the location of the Software Collection components in the Software Collection file system hierarchy.
Whether you need to specify a path redefinition in the
enable
scriptlet depends on the packages you choose to include in your Software Collection. The environment variables normally follow this pattern:
$ENV_VAR=$SCL_ENV_VAR:$ENV_VAR
2.9.1. Language-specific Path Redefinitions
- GEM_PATH
- The
GEM_PATH
environment variable specifies the location of Ruby gems. As such, it is also used in those Software Collections that extend the rh-ruby23 Software Collection. For more information, see Section 4.3, “Extending the rh-ruby23 Software Collection”.Include the following in theenable
scriptlet to redefine the environment variable:export GEM_PATH="\${GEM_PATH:=%{gem_dir}:\`scl enable %{scl_ruby} -- ruby -e "print Gem.path.join(':')"\`}"
- GOPATH
- The
GOPATH
environment variable specifies the location of Go source and binary files. Include the following in theenable
scriptlet to redefine the environment variable:export GOPATH="%{gopath}\${GOPATH:+:\${GOPATH}}"
- JAVACONFDIRS
- The
JAVACONFDIRS
environment variable is used to specify the location of thejava.conf
configuration file. Include the following in theenable
scriptlet to redefine the environment variable:export JAVACONFDIRS="%{_sysconfdir}/java\${JAVACONFDIRS:+:}\${JAVACONFDIRS:-}"
- PERL5LIB
- The
PERL5LIB
environment variable is used to specify the location of custom Perl modules so that they can be installed with the%{?_scl_root}
prefix. Include the following in theenable
scriptlet to redefine the environment variable:export PERL5LIB="%{_scl_root}%{perl_vendorlib}\${PERL5LIB:+:\${PERL5LIB}}"
- PYTHONPATH
- The
PYTHONPATH
environment variable specifies the location of custom Python libraries. Include the following in theenable
scriptlet to redefine the environment variable:export PYTHONPATH="%{_scl_root}%{python_sitearch}:%{_scl_root}%{python_sitelib}\${PYTHONPATH:+:}\${PYTHONPATH:-}"
2.9.2. Other Path Redefinitions
- CPATH
- The
CPATH
environment variable specifies include paths for the GCC compiler to use. Include the following in theenable
scriptlet to redefine the environment variable:export CPATH="%{_includedir}\${CPATH:+:\${CPATH}}"
- INFOPATH
- The
INFOPATH
environment variable specifies directories that contain Info files. Include the following in theenable
scriptlet to redefine the environment variable:export INFOPATH="%{_infodir}\${INFOPATH:+:\${INFOPATH}}"
- LD_LIBRARY_PATH
- The
LD_LIBRARY_PATH
environment variable specifies the location of libraries. For more information, see Section 3.5, “Software Collection Library Support”.Include the following in theenable
scriptlet to redefine the environment variable:export LD_LIBRARY_PATH="%{_libdir}\${LD_LIBRARY_PATH:+:\${LD_LIBRARY_PATH}}"
- LIBRARY_PATH
- The
LIBRARY_PATH
environment variable specifies the location of special linker files or ordinary libraries for GCC to use. Include the following in theenable
scriptlet to redefine the environment variable:export LIBRARY_PATH="%{_libdir}\${LIBRARY_PATH:+:\${LIBRARY_PATH}}"
- MANPATH
- The
MANPATH
environment variable specifies the location of man pages. For more information, see Section 3.7, “Software Collection MANPATH Support”.Include the following in theenable
scriptlet to redefine the environment variable:export MANPATH="%{_mandir}:\${MANPATH:-}"
- PATH
- The
PATH
environment variable specifies the location of binary files. Include the following in theenable
scriptlet to redefine the environment variable:export PATH="%{_bindir}:%{_sbindir}\${PATH:+:\${PATH}}"
- PCP_DIR
- The
PCP_DIR
environment variable specifies the location of files and directories used by PCP. Include the following in theenable
scriptlet to redefine the environment variable:export PCP_DIR="%{_scl_root}"
- PKG_CONFIG_PATH
- The
PKG_CONFIG_PATH
environment variable specifies the location of.pc
files used by the pkg-config program. For more information, see Section 3.6, “Software Collection .pc Files Support”.Include the following in theenable
scriptlet to redefine the environment variable:export PKG_CONFIG_PATH="%{_libdir}/pkgconfig\${PKG_CONFIG_PATH:+:\${PKG_CONFIG_PATH}}"
- XDG_CONFIG_DIRS
- The
XDG_CONFIG_DIRS
environment variable specifies the location of desktop configuration files according to the freedesktop.org specification. Include the following in theenable
scriptlet to redefine the environment variable:export XDG_CONFIG_DIRS="%{_sysconfdir}/xdg:\${XDG_CONFIG_DIRS:-/etc/xdg}"
- XDG_DATA_DIRS
- The
XDG_DATA_DIRS
environment variable specifies the location of desktop data files according to the freedesktop.org specification. It is used in some Software Collections to locate the Software Collection-specific scripts or to enable bash completion.Include the following in theenable
scriptlet to redefine the environment variable:export XDG_DATA_DIRS="%{_datadir}:\${XDG_DATA_DIRS:-/usr/local/share:%{_root_datadir}}"