README.md 3.28 KB
Newer Older
Sergey Gorbunov's avatar
update  
Sergey Gorbunov committed
1
2
3
4
5
6
Instructions:

== Install docker on your system ==

https://www.docker.com/get-started

Sergey Gorbunov's avatar
Sergey Gorbunov committed
7
8
9
10
11
== Install X11 ==
For Mac OsX:
1. install XQuartz
2. in XQuartz Setting / Security allow connections from network clients (see X11Settings.png)
(Einstellungen / Sicherheit/ Verbindungen von Netzwerk-Clients erlauben)
Sergey Gorbunov's avatar
update  
Sergey Gorbunov committed
12
13
14

== Run cbmdockInit.sh script ==

Sergey Gorbunov's avatar
Sergey Gorbunov committed
15
./cbmdockInit.sh
Sergey Gorbunov's avatar
update  
Sergey Gorbunov committed
16
17
18
19
20

== Re-login, or type

source ~/.baschrc

Sergey Gorbunov's avatar
Sergey Gorbunov committed
21
== Run cbmdock alias. It opens a shell in the container with an actual DISPLAY value ==
Sergey Gorbunov's avatar
update  
Sergey Gorbunov committed
22

Sergey Gorbunov's avatar
Sergey Gorbunov committed
23
( This command you call each time you want to enter the container. To exit, type "exit". )
Sergey Gorbunov's avatar
update  
Sergey Gorbunov committed
24
25
26

cbmdock

Sergey Gorbunov's avatar
Sergey Gorbunov committed
27
######################################################  
Sergey Gorbunov's avatar
Sergey Gorbunov committed
28
  Software installation inside the container  
Sergey Gorbunov's avatar
Sergey Gorbunov committed
29
  
Sergey Gorbunov's avatar
Sergey Gorbunov committed
30
  Instructions are copied from FairSoft, FairRoot, CbmRoot installations  
Sergey Gorbunov's avatar
Sergey Gorbunov committed
31
32
  [CbmRoot](https://git.cbm.gsi.de/computing/cbmroot)  
  [FairSoft](https://github.com/FairRootGroup/FairSoft)  
Sergey Gorbunov's avatar
Sergey Gorbunov committed
33
  [FairRoot](https://fairroot.gsi.de/)  
Sergey Gorbunov's avatar
Sergey Gorbunov committed
34
######################################################  
Sergey Gorbunov's avatar
update  
Sergey Gorbunov committed
35

Sergey Gorbunov's avatar
Sergey Gorbunov committed
36
== External libraries, listed in the FairSoft dependencies ==  
Sergey Gorbunov's avatar
update  
Sergey Gorbunov committed
37

Sergey Gorbunov's avatar
Sergey Gorbunov committed
38
sudo apt-get update  
Sergey Gorbunov's avatar
update  
Sergey Gorbunov committed
39

Sergey Gorbunov's avatar
Sergey Gorbunov committed
40
sudo apt-get install -y 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 python-dev libc6-dev-i386 libxml2-dev wget libssl-dev libkrb5-dev automake autoconf libtool  
Sergey Gorbunov's avatar
update  
Sergey Gorbunov committed
41

Sergey Gorbunov's avatar
Sergey Gorbunov committed
42
== External libraries needed to compile FairSoft for CBM ==  
Sergey Gorbunov's avatar
update  
Sergey Gorbunov committed
43

Sergey Gorbunov's avatar
Sergey Gorbunov committed
44
sudo apt-get install -y sqlite3 libsqlite3-dev  
Sergey Gorbunov's avatar
update  
Sergey Gorbunov committed
45

Sergey Gorbunov's avatar
Sergey Gorbunov committed
46
== Your lovely Linux tools ==  
Sergey Gorbunov's avatar
update  
Sergey Gorbunov committed
47

Sergey Gorbunov's avatar
Sergey Gorbunov committed
48
sudo apt-get install -y emacs mc x11-apps  
Sergey Gorbunov's avatar
update  
Sergey Gorbunov committed
49

Sergey Gorbunov's avatar
Sergey Gorbunov committed
50
== Configure GIT the way you like it ==  
Sergey Gorbunov's avatar
update  
Sergey Gorbunov committed
51

Sergey Gorbunov's avatar
Sergey Gorbunov committed
52
53
54
55
56
57
58
59
60
git config --global user.name \<my name\>  
git config --global user.email \<my email\>  
git config --global core.editor emacs  
git config --global core.autocrlf input  
git config --global core.safecrlf true  
git config --global branch.autosetuprebase always  
git config --global credential.helper 'cache --timeout 3600'  
git config --global color.ui true  
git config --global push.default simple  
Sergey Gorbunov's avatar
Sergey Gorbunov committed
61

Sergey Gorbunov's avatar
update  
Sergey Gorbunov committed
62
63
64
65
66
67
68
69
70
71
72
== Configure paths for FAIR packages ==

printf "\
\n export SIMPATH=/home/cbmdock/fairsoft \
\n export FAIRROOTPATH=/home/cbmdock/fairroot \
\n export CBMSRCDIR=/home/cbmdock/cbmroot \
\n source /home/cbmdock/build/config.sh \
" >> ~/.bashrc

source ~/.bashrc

Sergey Gorbunov's avatar
Sergey Gorbunov committed
73
mkdir ~/src  
Sergey Gorbunov's avatar
update  
Sergey Gorbunov committed
74

Sergey Gorbunov's avatar
Sergey Gorbunov committed
75
76
77
= Install FairSoft ==  

cd ~/src  
Sergey Gorbunov's avatar
Sergey Gorbunov committed
78
79
git clone -b jun19p2 https://github.com/FairRootGroup/FairSoft  
cd FairSoft  
Sergey Gorbunov's avatar
update  
Sergey Gorbunov committed
80

Sergey Gorbunov's avatar
Sergey Gorbunov committed
81
// Interactive Dialog Choices stored in the config.cache file:  
Sergey Gorbunov's avatar
update  
Sergey Gorbunov committed
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102

printf "\
compiler=gcc\n\
debug=yes\n\
optimize=yes\n\
build_MQOnly=no\n\
geant4_download_install_data_automatic=yes\n\
geant4_install_data_from_dir=no\n\
geant4mt=yes\n\
build_root6=yes\n\
build_python=yes\n\
install_sim=yes\n\
SIMPATH_INSTALL=$SIMPATH\n\
platform=linux\
" > config.cache

./configure.sh


== Install FairRoot ==

Sergey Gorbunov's avatar
Sergey Gorbunov committed
103
cd ~/src  
Sergey Gorbunov's avatar
Sergey Gorbunov committed
104
105
106
107
git clone -b v18.2.1 https://github.com/FairRootGroup/FairRoot.git  
cd FairRoot  
mkdir build  
cd build  
Sergey Gorbunov's avatar
Sergey Gorbunov committed
108

Sergey Gorbunov's avatar
update  
Sergey Gorbunov committed
109
cmake -DCMAKE_INSTALL_PREFIX=$FAIRROOTPATH -DBUILD_UNITTESTS=ON ../.
Sergey Gorbunov's avatar
Sergey Gorbunov committed
110

Sergey Gorbunov's avatar
update  
Sergey Gorbunov committed
111
112
113
114
115
nice make install -j


== Install CBMroot in the CBMshare directory, which is a shared Host directory ==

Sergey Gorbunov's avatar
Sergey Gorbunov committed
116
117
118
119
120
121
cd ~  
git clone https://git.cbm.gsi.de/computing/cbmroot  
mkdir build  
cd build  
cmake ../cbmroot  
make -j  
Sergey Gorbunov's avatar
update  
Sergey Gorbunov committed
122
source /home/cbmdock/build/config.sh