Documentation of SBS-offline » History » Version 2
Eric Fuchey, 04/06/2020 11:58 AM
1 | 1 | Eric Fuchey | h1. Documentation of SBS-offline |
---|---|---|---|
2 | 2 | Eric Fuchey | |
3 | h2. Overview |
||
4 | |||
5 | This page is maintained by the UConn group (Eric Fuchey + Andrew Puckett) and as of February 14, 2020 is specific to the '''''master''''' branch of SBS-offline on github. |
||
6 | |||
7 | h2. Purpose |
||
8 | |||
9 | This page documents the SBS-offline program code, which purpose is to perform the data analysis for the upcoming SBS experiments. |
||
10 | |||
11 | h2. Getting the code and building the program |
||
12 | |||
13 | h3. Prerequisites |
||
14 | |||
15 | *Working [https://root.cern.ch/drupal/ ROOT] installation. '''libsbsdig is compatible with ROOT version 5 and ROOT version 6'''. '''''ROOT 6 is strongly recommended''''' |
||
16 | *Working installation of cmake '''version 3.9 minimum''' |
||
17 | *Working analyzer '''built with cmake'''. for that purpose, refer to the instruction below. |
||
18 | |||
19 | h3. Instructions for analyzer cmake installation compatible |
||
20 | clone the analyzer repository from: |
||
21 | * git clone git@github.com:JeffersonLab/analyzer.git |
||
22 | build it with cmake following the instructions at: |
||
23 | * https://github.com/JeffersonLab/analyzer#compiling-with-cmake |
||
24 | 2 precisions: |
||
25 | *it seems that in these instructions the "build" directory ''has to be'' in the analyzer directory. |
||
26 | *for your environment settings, in addition to the two lines mentionned in the instructions, you still want to define ANALYZER as the path to your install directory e.g. |
||
27 | * setenv ANALYZER $HOME/local/analyzer |
||
28 | |||
29 | h3. Downloading the repository |
||
30 | |||
31 | The code is hosted on a github repository owned by JLab. To clone via ssh (preferred method on JLab batch farm), do: |
||
32 | |||
33 | {| class="wikitable" style="background: #BFBFBF;" |
||
34 | |- |
||
35 | | '''git clone git@github.com:JeffersonLab/SBS-offline.git''' |
||
36 | |- |
||
37 | |} |
||
38 | |||
39 | For this method to work, the ssh public key on the machine where you want to get the code must be added to your github account (see [https://help.github.com/articles/generating-ssh-keys/ Guide] to generating ssh keys and adding to your github.com account.) |
||
40 | |||
41 | Cloning the repository defaults to the "master" branch. |
||
42 | |||
43 | h3. Building and installing the library |
||
44 | |||
45 | Create a "build" directory that is parallel to the "SBS-offline" source directory (this is not strictly required, but the build directory must be separate from the "SBS-offline" directory in any case). |
||
46 | You also need to have setup an installation path e.g. /path/to/sbs-offline-install |
||
47 | '''''NB''''': similarly to the build directory, the /path/to/gsbs-offline-install directory shall '''not''' be the same as the source directory! |
||
48 | The following instructions assume that "build" is parallel to "SBS-offline": |
||
49 | If successful, the libsbs library and several other files and folders will be created in the "build" and the "install" directory. |
||
50 | |||
51 | To build and install, the procedure needs to be completed. From scratch: |
||
52 | {| class="wikitable" style="background: #BFBFBF;" |
||
53 | |- |
||
54 | | '''mkdir build''' |
||
55 | |- |
||
56 | | '''cd build''' |
||
57 | |- |
||
58 | | '''cmake -DCMAKE_INSTALL_PREFIX=/path/to/sbs-offline-install ../SBS-offline''' |
||
59 | |- |
||
60 | | '''make install''' |
||
61 | |} |
||
62 | |||
63 | |||
64 | Then, the following line should be added in the OS login configuration file to take advantage of this functionality: |
||
65 | * source /path/to/sbs-offline-install/sbsenv.sh (or source /path/to/g4sbs_install/sbsenv.csh on the batch farm) |