Warning, /EICrecon/docs/get-started/eic-shell.md is written in an unsupported language. File is not indexed.
0001 # Using EICrecon with `eic-shell`
0002
0003
0004 The EIC environment `eic-shell` is a singularity/docker container with a
0005 curated selection of software components. It is the recommended way to use
0006 `eicrecon` as it already has all of the dependencies compiled with matching
0007 version numbers. This requires either singularity or docker to be installed
0008 on your local machine. Below are some quick start instructions for using
0009 Singularity.
0010
0011 ## Quick start for eic-shell
0012 ~~~bash
0013 mkdir ~/eic
0014 cd ~/eic
0015
0016 curl --location https://get.epic-eic.org | bash
0017 ./eic-shell
0018 ~~~~
0019
0020 _n.b. if on the JLab CUE you should do module load singularity/3.9.5 first_
0021
0022 Full tutorials on setting up you environment with `eic-shell` can be found here:
0023 - [EIC Tutorial: Setting Up Your Environment](https://eic.github.io/tutorial-setting-up-environment/index.html)
0024 - [`eic-shell` video tutorial](https://www.youtube.com/watch?v=Y0Mg24XLomY)
0025
0026
0027
0028 ## Using the `eic-shell` environment
0029
0030 Once inside the `eic-shell` you should source the geometry setup script since
0031 this is not done by default. Then, clone the `EICrecon` repository and build it:
0032
0033 ```bash
0034 source /opt/detector/epic-main/bin/thisepic.sh
0035
0036 git clone https://github.com/eic/EICrecon
0037 cmake -S EICrecon -B build
0038 cmake --build build --target install -- -j8
0039 ```
0040
0041 Assuming all goes well, `EICrecon` will be installed in the _EICrecon_ directory.
0042 To set you environment up to use it, source the setup script generated by the build:
0043 ~~~bash
0044 source EICrecon/bin/eicrecon-this.sh
0045 ~~~
0046
0047 Test the installation by running the _eicrecon_ executable with no arguments:
0048
0049 ~~~bash
0050 eicrecon
0051
0052 Usage:
0053 eicrecon [options] source1 source2 ...
0054
0055 Description:
0056 Command-line interface for running JANA plugins. This can be used to
0057 read in events and process them. Command-line flags control configuration
0058 while additional arguments denote input files, which are to be loaded and
0059 processed by the appropriate EventSource plugin.
0060
0061 Options:
0062 -h --help Display this message
0063 -v --version Display version information
0064 -c --configs Display configuration parameters
0065 -l --loadconfigs <file> Load configuration parameters from file
0066 -d --dumpconfigs <file> Dump configuration parameters to file
0067 -b --benchmark Run in benchmark mode
0068 -L --list_factories List all the factories without running
0069 -Pkey=value Specify a configuration parameter
0070
0071 Example:
0072 eicrecon -Pplugins=plugin1,plugin2,plugin3 -Pnthreads=8 inputfile1.txt
0073 ~~~
0074
0075 At this point, you can [create your own user plugin](/howto/make_plugin.md) or
0076 [add a new factory (i.e. algorithm)](/howto/add_factory.md).