User Tools

Site Tools


software:install

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
software:install [2020/05/12 13:02] himusersoftware:install [2025/06/27 14:12] (current) himuser
Line 1: Line 1:
-==== FAIRsoft ====+==== PRIMASOFT Installation ==== 
 +**Docker installation**\\ 
 +The PRIMA software for analysis, simulation, etc. is inside a Docker container. In case you are not running primasoft in any of EMP's pc's, then first you will need to install Docker. Check how to do it here: 
 +  * [[https://docs.docker.com/engine/install/ubuntu/#install_docker_ubuntu|Install Docker Engine for Ubuntu]] 
 +  * [[https://docs.docker.com/desktop/setup/install/windows-install/#install_docker_windows|Install Docker Desktop for Windows]] 
 +  * [[https://docs.docker.com/desktop/setup/install/mac-install/#instal_docker_macos|Install Docker Desktop for Mac]] 
 +  * [[https://www.youtube.com/watch?v=tjqd1Fxo6HQ/#youtube_installubuntu_video|Youtube video concerning Ubuntu Installation]]\
  
-FAIRsoft should be installed (see [[https://panda-wiki.gsi.de/foswiki/bin/view/Computing/PandaRootInstallGit#PandaRoot_installation_guide|PandaRoot]])\\ +**Git clone the image**\\ 
-Or follow this description:\\ +Now you need to pull the Docker image from the EMP GitLab repository. Open a new terminal, and do:
- +
-**Install the dependencies**\\ +
-DebianUbuntu and other Debian based systems (64bit):+
 <code> <code>
-$ apt-get install  cmake cmake-data g++ gcc gfortran \ +git clone https://gitlab.rlp.net/emp/primasoft.git
-  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 python-dev \ +
-  libc6-dev-i386 libxml2-dev wget libssl-dev libkrb5-dev \ +
-  automake autoconf libtool+
 </code> </code>
  
-**Clone the Fairsoft package**\\ +**Start the container**\\ 
-e.g. to your home directory ''/home/username''+Before starting the proper docker container, you need to add your personal user into the docker group. For that, do:
 <code> <code>
-$ git clone https://github.com/FairRootGroup/FairSoft fairsoft_may18 +usermod -a -G <user> docker 
-Cloning into 'fairsoft_may18'... +</code> 
-remote: Counting objects: 1385done. +After that, you will need to 're-enterinto your user session to make sure your user is now inside the docker groupFor doing thisyou can always restart the computeror type in a terminal  
-remote: Total 1385 (delta 0)reused 0 (delta 0), pack-reused 1385 +<code>  
-Receiving objects: 100% (1385/1385), 17.86 MiB | 4.03 MiB/s, done. +su <user_name> 
-Resolving deltas: 100% (904/904), done. +</code> 
-Checking connectivity... done. +and then write  
- +<code> 
-$ cd fairsoft_may18+groups
 </code> </code>
  
 +Once you type that, you should be able to see all groups your user is in, so the ''docker'' name should appear there.
  
-**Launch the ./configure.sh script**\\ +**Starting the container and testing the simulation**\\ 
-and answer to the questions as the following+Now you need to start the container so you can run the full primasoft. Write
-  - GCC (Linux) +<code> 
-  - Optimize with Debug Info +$ cd primasoft 
-  - Would you like to install FairMQ only? - No +./start_run.sh 
-  - Would you like to install Simulation engines and event generators? - Yes +</code>
-  - 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? - No +
-  - 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 timeAt the end, you should have the following message:+A new container with the name primaSoft-dev should be createdAfter running ./start_run.sh The output should look like this:
 <code> <code>
-**** Checking libraries in /home/pandauser/fairsoft_jun19/build/lib **** +./start_run.sh 
-*** End installation of external packages without Errors***+The default directory for G4WORKDIR is /home/foski/geant4_workdir. You can change it by adding -DG4WORKDIR=${Your_Host_Dir} to run this script. 
 +access control disabled, clients can connect from any host 
 +starting new container with name primaSoft-dev... 
 +Unable to find image 'registry.gitlab.rlp.net/emp/docker_image_test/prima_soft_nonsu:2501' locally 
 +2501: Pulling from emp/docker_image_test/prima_soft_nonsu 
 +54609b48ebc1: Pull complete  
 +37577e941a51: Pull complete  
 +e8d35fa376e8: Pull complete  
 +279d4a417a51: Pull complete  
 +ae2ad9eaf997: Pull complete  
 +acacd230c1e4: Pull complete  
 +17d4bdcfb566: Pull complete  
 +45ec860a2ac8: Pull complete  
 +4f4fb700ef54: Pull complete  
 +Digest: sha256:e4ebe8a28daf2f3a94d323882e54773d6ee072a71ecd740e38d1065f285618ca 
 +Status: Downloaded newer image for registry.gitlab.rlp.net/emp/docker_image_test/prima_soft_nonsu:2501 
 +ec6f1e35929d0f6f8720fc46ec303b2d4993dd43aa61526b0f61b523f6fcd35d 
 +new container started with id ec6f1e35929d 
 +G4VMCDIR set to /opt/g4vmc/6.6p1_install 
 +ubuntu@oskar:~/primasoft$ 
 </code> </code>
  
- In case some error has occurred try it again. If it is still not working ask for help+The last line means your are already inside the container under the ''ubuntu'' username.
  
 +== Set the environment == 
  
 +<code>
 +source ./setenv.sh
 +cd utils/
 +make
 +cd ~/primasoft/analysis
 +mkdir lib
 +make
 +</code>
  
-==== Primasoft ==== +== Compile geant4 simulation ==
- +
-=== Get source code ===+
  
 <code> <code>
-git clone agmaas@bwec-fileserver:/home/agmaas/git/primasoft.git+cd ~/primasoft/geant4 
 +make
 </code> </code>
  
-since 2020:+== Execute geant4 simulation == 
 <code> <code>
-git clone https://gitlab.rlp.net/emp/primasoft.git+geant4$ primag4sim primag4sim.conf
 </code> </code>
  
-\\ +**Rootmacros** \\ 
-=== Set the enviroment ===+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:
 <code> <code>
-cd primasoft/+cd ~/ 
 +$ mkdir .rootlogon 
 +$ geany .rootlogon/rootlogon.C
 </code> </code>
-Define the environment variable ''FAIRSOFT_BUILD_DIR'' and set it equal the path to the FAIRsoft build directory+ 
 +Enter the following lines to your rootlogon.C file:
 <code> <code>
-export FAIRSOFT_BUILD_DIR=/path/to/fairsoft/build +// This is the file rootlogon.C                                                  
-source setenv.sh+
 +  printf("\n Beginning new ROOT session\n"); 
 + 
 +  gROOT->ProcessLine(".include your_path/primasoft/geant4"); 
 +  gSystem->Load("<geant4_workdir>/tmp/Linux-g++/primag4sim/libprimadict.so");                               
 +}
 </code> </code>
  
-\\ +Here, ''your_path'' is the path to the primasoft git repository and the ''<geant4_workdir>'' can be found out by ''$ echo $G4WORKDIR''.\\ 
-=== Compile geant4 simulation ===+ 
 +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:
  
 <code> <code>
-cd geant4/ +Rint.Logon:    rootlogon.C
-source $FAIRSOFT_BUILD_DIR/share/Geant4/geant4make/geant4make.sh +
-make+
 </code> </code>
  
 +to:
  
 +<code>
 +Rint.Logon:    ~/.rootlogon/rootlogon.C
 +</code>
  
 +
 +Now you can execute the rootmacro:
 +<code>
 +/geant4$ root -l rootmacros/test.C+
 +</code>
software/install.1589288532.txt.gz · Last modified: (external edit)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki