==== FAIRsoft ====
FAIRsoft should be installed (see [[https://panda-wiki.gsi.de/foswiki/bin/view/Computing/PandaRootInstallGit#PandaRoot_installation_guide|PandaRoot]])\\
Or follow this description:\\
**Install the dependencies**\\
Debian, Ubuntu and other Debian based systems (64bit):
$ apt-get install cmake cmake-data g++ gcc gfortran \
debianutils build-essential make patch sed \
libx11-dev libxft-dev libxext-dev libxpm-dev libxmu-dev \
libglu1-mesa-dev libgl1-mesa-dev \
libncurses5-dev curl libcurl4-openssl-dev bzip2 libbz2-dev gzip unzip tar \
subversion git xutils-dev flex bison lsb-release python3-dev \
libc6-dev-i386 libxml2-dev wget libssl-dev libkrb5-dev \
automake autoconf libtool
sudo apt-get install libxi-dev
**Clone the Fairsoft package**\\
e.g. to your home directory ''/home/username''
$ git clone https://github.com/FairRootGroup/FairSoft fairsoft_may18
Cloning into 'fairsoft_may18'...
remote: Counting objects: 1385, done.
remote: Total 1385 (delta 0), reused 0 (delta 0), pack-reused 1385
Receiving objects: 100% (1385/1385), 17.86 MiB | 4.03 MiB/s, done.
Resolving deltas: 100% (904/904), done.
Checking connectivity... done.
== Switch to the May18p1 tag: ==
$ cd fairsoft_may18
$ git checkout tags/may18p1
**Launch the ./configure.sh script((If using fairsoft may18p1, since 2021 in the package_versions.sh script two URLs need to be changed, line 25 and line 34.
#export PYTHIA8_LOCATION="http://home.thep.lu.se/~torbjorn/pythia8/"
export PYTHIA8_LOCATION="https://pythia.org/download/pythia82/"
#export GEANT4_LOCATION="http://geant4.cern.ch/support/source/"
export GEANT4_LOCATION="http://cern.ch/geant4-data/releases/"
))**\\
and answer to the questions as the following:
- GCC (Linux)
- Optimize with Debug Info
- Would you like to install FairMQ only? - No
- Would you like to install Simulation engines and event generators? - Yes
- Would you like to install the additionally available data files the GEANT4 package? - Internet
- Would you like to install the python bindings for Geant4 and Root? - Yes
- Please define a directory for the installation of the external packages. - ''/home/username/fairsoft_may18/build''
- Is /home/username/fairsoft_may18/build the correct path? -Yes
Now you can start doing something else, since the installation will take some time. At the end, you should have the following message:
**** Checking libraries in /home/pandauser/fairsoft_jun19/build/lib ****
*** End installation of external packages without Errors***
In case some error has occurred try it again. If it is still not working ask for help.
==== Primasoft ====
=== Get source code ===
git clone agmaas@bwec-fileserver:/home/agmaas/git/primasoft.git
since 2020:
git clone https://gitlab.rlp.net/emp/primasoft.git
\\
=== Set the enviroment ===
cd primasoft/
Define the environment variable ''FAIRSOFT_BUILD_DIR'' and set it equal the path to the FAIRsoft build directory
export FAIRSOFT_BUILD_DIR=/path/to/fairsoft/build
source setenv.sh
\\
=== Compile geant4 simulation ===
cd geant4/
source $FAIRSOFT_BUILD_DIR/share/Geant4/geant4make/geant4make.sh
make
=== Execute geant4 simulation ===
geant4$ primag4sim primag4sim.conf
=== Rootmacros ===
In order to execute rootmacros, the include paths need to be set.\\
This can be done automatically with a ''rootlogon.C'' file.\\
Create the rootlogon.C file:
$ cd ~/
$ mkdir .rootlogon
$ geany .rootlogon/rootlogon.C
Enter the following lines to your rootlogon.C file:
// This is the file rootlogon.C
{
printf("\n Beginning new ROOT session\n");
gROOT->ProcessLine(".include your_path/primasoft/geant4");
gSystem->Load("/tmp/Linux-g++/primag4sim/libprimadict.so");
}
Here, ''your_path'' is the path to the primasoft git repository and the '''' can be found out by ''$ echo $G4WORKDIR''.\\
Now root needs to know where to find the rootlogon.C file. Therefore in ''$FAIRSOFT_BUILD_DIR'/share/root/etc/system.rootrc' change the line:
Rint.Logon: rootlogon.C
to:
Rint.Logon: ~/.rootlogon/rootlogon.C
Now you can execute the rootmacro:
/geant4$ root -l rootmacros/test.C+