This space is obsolete and unmaintained. Equivalent content to this Software User Guide is now maintained at .

Skip to end of metadata
Go to start of metadata


Prior to building the LSST Stack, ensure that all third-party software dependencies are installed. See Prerequisites for details. Also be sure to unset (or unsetenv) environment variables that were used in conjunction with prior versions of the stack: 

In fact, it may be wise to unset any environment variable starting with the strings LSST or EUPS to avoid name collisions. Note that such variables are most likely to have been set if you initialized the LSST environment prior to starting the install of a new version.  

Installation Directory

Create and change into the directory where LSST Stack is to be installed (your LSST home): 

mkdir -p /the/LSST/installation/root && cd /the/LSST/installation/root
The home of the LSST Stack installation directory is arbitrary ($HOME/lsst is not a bad choice for a personal installation on your own machine). Just ensure that the destination directory is empty. 

Installation for Groups

Those in a system administration role, who are installing a writable stack for multiple users, will likely want to establish a separate group (perhaps lsst) with a umask of 002 (all access permissions for the group; allow other users to read+execute). The installation directory must be owned by the group, have the SGID (2000) bit set, and allow group read/write/execute: that is, mode 2775. Individual users who install a personal Stack on their own machine need not worry about this.

Installation Set-up

Download and run the installation setup script, which installs the basic packages required to install other packages

curl -OL

curl may fail with the following error (particularly on ubuntu 14.04)

 % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
 0     0    0     0    0     0      0      0 --:--:-- --:--:-- 
--:--:--     0curl: (77) error setting certificate verify locations:
  CAfile: /etc/pki/tls/certs/ca-bundle.crt
  CApath: none

The fix is (as suggested by Scott Emmons at

sudo mkdir -p /etc/pki/tls/certs
sudo cp /etc/ssl/certs/ca-certificates.crt /etc/pki/tls/certs/ca-bundle.crt

after which curl should work normally.

This installs the loadLSST.* scripts, which you should source to ensure that LSST tools (e.g., the eups command) are included in your path. The install script will check your system to ensure that appropriate versions of critical packages are installed on your system, to enable bootstrapping the Stack. These include git, and python. If these packages are not available, the script will offer to install them for you (using the Anaconda Python distribution for the latter packages). 

Allowing the installation of these core packages will not replace or modify any other version of these packages that may be installed on your system. If you do not choose the Anaconda python install, and subsequent package build steps fail, you can do one of two things:

  • Report the problem to the lsst-stack e-mail list (be sure to include your OS, a description of the problem, plus the error message(s)), then follow the instructions from the HelpDesk to resolve the problem and resume the build.
  • Consider removing all contents of the install directory and start from scratch, and accepting the Anaconda python installation option.

The script will proceed with the installation of other core packages, including EUPS and SCONS. Now source the LSST environment to continue the installation: 

source $INSTALL_DIR/loadLSST.bash # for bash users
source $INSTALL_DIR/loadLSST.csh  # for csh users
source $INSTALL_DIR/loadLSST.ksh  # for ksh users
source $INSTALL_DIR/loadLSST.zsh  # for zsh users
where $INSTALL_DIR is expanded to your installation directory. 

Install Packages

Finally, build/install any other components of the LSST Stack that are relevant for your work. Many users will want to make use of the pipelines or applications code. A simple way to ensure that you have a fairly complete set of packages for this need is to install lsst_apps. The dependency tree for lsst_apps ensures that many other packages (about 70, including e.g., pipe_tasks) are also installed. 

You may want to browse the Known Installation Issues page before installing to ensure that the build process goes smoothly. Installing lsst_apps may take a little while (about 1.2 hr on a 2014-era iMac with 32 GB of memory and 8 cores):  

eups distrib install -t v11_0 lsst_apps

To browse the installed packages look in the $INSTALL_DIR/<platform> subdirectory (on MacOSX it is /DarwinX86), where you will find not just the binaries but the source code as well. 

Be sure to check out Known Installation Issues if you have difficulty, and report any new problems you discover. 

For each new session (e.g., new login) make sure to source the loadLSST script to set up the LSST environment variables prior to executing commands.

You should test the installation by running the Demo. 


  • No labels