Skip to content
Snippets Groups Projects
quickstart.mdx 1.65 KiB
Newer Older
  • Learn to ignore specific revisions
  • ---
    title: "Quick-start Guide"
    ---
    
    
    ## Prerequisites
    
    The programmer is assumed to be familiar with
    - working in the terminal over ssh
    - `git` and gitlab (https://eicweb.phy.anl.gov)
    - using `cmake`
    - C++, python, and shell scripting
    
    
    
    Create an account on https://eicweb.phy.anl.gov and configure your account. 
    
    This tutorial requires that [singularity](singularity) is installed 
    on the system. We also assumes [modulefiles](modulefiles) can be 
    used but are not required.
    
    ## The EIC Software Container
    
    Installing the [eic_container](quickstart/eic_container) is done with the 
    following:
    
    ```shell
    git clone https://eicweb.phy.anl.gov/containers/eic_container.git
    mkdir eic_container/build 
    cd eic_container/build 
    cmake ../. -DCMAKE_INSTALL_PREFIX=$HOME/stow/eic_container_1.0.2
    make -j4 install
    ```
    
    Inspect the list of files installed, noting the locations of modulefiles and 
    wrapper scripts.
    
    
    ## Using the container
    
    ```bash
    module load eic_container
    ```
    
    ## Development within singularity container
    
    The following helper runs bash inside `eic_container`
    ```bash
    module load eic_container
    container_dev
    ```
    
    For projects that you want to build but which are also inside of the container, 
    you must make sure to set `$PATH` and `$LD_LIBRARY_PATH` to point to the 
    development build's installation prefix first. Here we assume your development 
    builds are being installed into `$HOME/stow/development`
    
    A simple setup script will make sure
    ```bash
    export $PATH=$HOME/stow/development/bin:$PATH
    export $LD_LIBRARY_PATH=$HOME/stow/development/lib:$HOME/stow/development/lib64:$LD_LIBRARY_PATH
    export $ROOT_INCLUDE_PATH=$HOME/stow/development/include:$ROOT_INCLUDE_PATH
    ```