Installing JETSCAPE - TianyuDai/JETSCAPE-rhic-ags GitHub Wiki
Overview
To run JETSCAPE, you will need to install several software pre-requisites, and then build JETSCAPE. Acquiring the pre-requisites using a container environment will be simpler than installing the pre-requisites manually.
Recommended: Singularity
The simplest way to run JETSCAPE is through Singularity.
You will first want to verify if you have Singularity installed on your workstation:
singularity --version
If you don't, you will first have to install Singularity. If installing Singularity is not an option, try the Docker or manual installation.
Install JETSCAPE in a Singularity Container
Create a Singularity container of JETSCAPE built from the Docker container available on Docker Hub. Note that v1.4 does not refer to the version of JETSCAPE. The versioning on Docker Hub is different. Using the --sandbox flag creates the JETSCAPE Singularity container as a writable directory. The directory name chosen here is "jetbox". You can create any directory name you prefer.
This command creates the Singularity container with the required software prerequisites to run JETSCAPE. Only run this command in a directory that has a couple Gb of disk space, since this directory will be used for everything that follows.
singularity build --sandbox jetbox docker://jetscape/base:v1.4
Shell into the newly built container.
singularity shell --writable jetbox
This last command essentially created a virtual machine where all the libraries required are available to compile and run JETSCAPE.
Create a directory called "rhic_ags_school" and CD into it.
mkdir /rhic_ags_school
cd /rhic_ags_school
On RCF (RHIC computing facility)
CD in a repository where you have plenty of disk space (say "/sphenix/u/...")
cd /sphenix/user/...
and try the following:
singularity build jet.sif docker://jetscape/base:v1.4 singularity shell jet.sif cd /sphenix/user/... mkdir rhic_ags_school cd rhic_ags_school
Mounting an external directory
CD in a repository where you have plenty of disk space and try to start singularity while specifying a certain directory that should be mounted inside the container:
(replace "/scratch" by the directory you want to mount)
singularity build --sandbox jetbox docker://jetscape/base:v1.4 singularity shell --writable --bind /scratch:/mnt/ jetbox_bind cd /mnt mkdir rhic_ags_school cd rhic_ags_school
Clone JETSCAPE.
git clone https://github.com/TianyuDai/JETSCAPE-rhic-ags
CD into the cloned repository. Get external packages
cd JETSCAPE-rhic-ags
cd external_packages
bash get_music.sh
cd ..
Create a directory called build. CD into the build directory and build JETSCAPE.
mkdir build
cd build
cmake -DUSE_MUSIC=ON ../
make -j
At this point, JETSCAPE is ready to be used!
Alternative installation: from source codes
The manual installation instructions are relatively straightforward, although your mileage may vary depending on your OS and the libraries already installed on your workstation.
Alternative installation: Docker
Installation instructions with Docker are not yet fully tested. You can find them here. Please ask for help on Slack if you need to use the Docker instructions.