Project

General

Profile

NetDRMS Installation » History » Version 51

Pablo Alingery, 18/09/2015 15:35

1 50 Herve Ballans
{{toc}}
2 1 Herve Ballans
3 1 Herve Ballans
h1. NetDRMS Installation
4 1 Herve Ballans
5 1 Herve Ballans
h2. Requirements
6 1 Herve Ballans
7 47 Pablo Alingery
h3. Configuring production environment
8 1 Herve Ballans
9 49 Herve Ballans
Adding user production
10 47 Pablo Alingery
11 1 Herve Ballans
<pre>
12 1 Herve Ballans
# adduser production
13 1 Herve Ballans
# addgroup ias
14 1 Herve Ballans
# adduser production ias
15 1 Herve Ballans
</pre>
16 1 Herve Ballans
17 1 Herve Ballans
18 49 Herve Ballans
h3. Configure /home/production/.profile
19 1 Herve Ballans
20 49 Herve Ballans
Adding environment variables
21 1 Herve Ballans
22 49 Herve Ballans
<pre>
23 49 Herve Ballans
# Added by Elie for netdrms
24 49 Herve Ballans
#Modif Pablo 07/06/2010
25 49 Herve Ballans
PATH="/usr/local/netdrms_current/bin/linux_x86_64:$PATH"
26 49 Herve Ballans
PATH="/usr/local/netdrms_current/scripts:$PATH"
27 49 Herve Ballans
PATH="/usr/local/jmd/jetty/bin:$PATH"
28 49 Herve Ballans
PATH="/usr/local/jmd/vso/scripts:$PATH"
29 49 Herve Ballans
PATH="/usr/local/pgsql/bin:$PATH"
30 49 Herve Ballans
PATH="/usr/local/netdrms/scripts:$PATH"
31 49 Herve Ballans
#2014-12-17 Avec Herve et Pablo on pense que la ligne suivante est intutile as it is f.. install in /usr/local/lib
32 49 Herve Ballans
PATH="/home/production/cfitsio:$PATH"
33 49 Herve Ballans
#Done
34 47 Pablo Alingery
35 49 Herve Ballans
DERBY_HOME=/usr/local/jmd/derby
36 49 Herve Ballans
export DERBY_HOME
37 1 Herve Ballans
38 49 Herve Ballans
export CVSROOT=:pserver:anonymous@solarch.tuc.noao.edu:2401/vtarc1/vso/cvsroot
39 49 Herve Ballans
40 49 Herve Ballans
 #Added by Elie for jetty
41 49 Herve Ballans
PATH="/usr/local/jmd/derby/bin:$PATH"
42 49 Herve Ballans
</pre>
43 49 Herve Ballans
44 49 Herve Ballans
45 49 Herve Ballans
46 49 Herve Ballans
h4. sshagent to JSOC
47 49 Herve Ballans
48 1 Herve Ballans
TBD
49 49 Herve Ballans
50 1 Herve Ballans
51 1 Herve Ballans
h3. Mise en place de Privilèges pour le SUMS_MANAGER
52 1 Herve Ballans
53 1 Herve Ballans
Veuillez modifier le fichier /etc/sudoers afin que le user 'production' puisse exécuter le programme sum_chown que nous placerons plus loin dans le répertoire :usr/local/bin.
54 1 Herve Ballans
Cela se fait en ajoutant au fichier la ligne suivante :
55 1 Herve Ballans
	production host=NOPASSWD:/usr/local/bin/sum_chmown
56 1 Herve Ballans
57 1 Herve Ballans
h3. Mise en place du fichier de mot de passe pour la base postgres 
58 1 Herve Ballans
59 1 Herve Ballans
Veuillez créer le fichier .pgpass contenant les informations nécessaires au user 'production" afin qu'il se connecte sans mot de passe, en tant que 'production' ou 'postgres' aux 2 bases que l'on créera plus loin ias_sdo et ias_sdo_sums.
60 1 Herve Ballans
61 1 Herve Ballans
62 1 Herve Ballans
.pgpass content :
63 1 Herve Ballans
<pre>
64 1 Herve Ballans
	sol-sdo1:5432:ias_sdo:production: 
65 1 Herve Ballans
	sol-sdo1:5434:ias_sdo_sums:production: 
66 1 Herve Ballans
	sol-sdo1:5432:ias_sdo:postgres: 
67 1 Herve Ballans
	sol-sdo1:5434:ias_sdo_sums:postgres
68 19 Pablo Alingery
</pre>
69 1 Herve Ballans
70 1 Herve Ballans
h3. Install missing libraries
71 1 Herve Ballans
72 1 Herve Ballans
	• libreadline-dev (but already installed with postgresql)
73 1 Herve Ballans
	• libssl-dev 
74 1 Herve Ballans
	• libpam0g-dev 
75 1 Herve Ballans
	• libperl-dev 
76 1 Herve Ballans
77 1 Herve Ballans
<pre>
78 1 Herve Ballans
# apt-get install $library_name
79 1 Herve Ballans
</pre> 
80 1 Herve Ballans
where
81 1 Herve Ballans
	_$library_name_ is the name of library
82 1 Herve Ballans
83 19 Pablo Alingery
Then to update path on libraries, please type :
84 1 Herve Ballans
<pre>
85 1 Herve Ballans
# ldconfig
86 19 Pablo Alingery
</pre>
87 1 Herve Ballans
88 1 Herve Ballans
h3. Reconfigure locale
89 1 Herve Ballans
90 1 Herve Ballans
<pre>
91 1 Herve Ballans
# dpkg-reconfigure locales
92 1 Herve Ballans
</pre>
93 1 Herve Ballans
94 1 Herve Ballans
select fr_FR.UTF8 UTF8 and unselect en_US.UTF-8
95 1 Herve Ballans
96 1 Herve Ballans
localedef -i en_US -f UTF-8 en_US.UTF-8
97 1 Herve Ballans
98 1 Herve Ballans
(see here : [[http://www.thomas-krenn.com/en/wiki/Perl_warning_Setting_locale_failed_in_Debian]])
99 1 Herve Ballans
100 1 Herve Ballans
h3. Install missing packages
101 1 Herve Ballans
102 1 Herve Ballans
<pre>
103 1 Herve Ballans
# apt-get install gfortran swig
104 1 Herve Ballans
</pre>
105 1 Herve Ballans
106 1 Herve Ballans
h3. Installation of cfitsio library
107 1 Herve Ballans
108 1 Herve Ballans
Vesrion 3.37 (currently on sdo : 3.24)
109 1 Herve Ballans
<pre>
110 1 Herve Ballans
# wget ftp://heasarc.gsfc.nasa.gov/software/fitsio/c/cfitsio3370.tar.gz
111 1 Herve Ballans
</pre>
112 1 Herve Ballans
113 1 Herve Ballans
Dés-archivage et décompression
114 1 Herve Ballans
<pre>
115 1 Herve Ballans
# tar -xzvf cfitsio3370.tar.gz
116 1 Herve Ballans
</pre> 
117 1 Herve Ballans
118 1 Herve Ballans
Placez vous dans le répertoire /home/production/cftisio
119 1 Herve Ballans
120 1 Herve Ballans
su - root and :
121 1 Herve Ballans
<pre>
122 1 Herve Ballans
# ./configure --prefix=/usr/local
123 1 Herve Ballans
# make 
124 1 Herve Ballans
# make install
125 1 Herve Ballans
</pre> 
126 1 Herve Ballans
127 1 Herve Ballans
h2. Installation of postgresql
128 1 Herve Ballans
129 1 Herve Ballans
See the section : [[Test_Environment_-_Virtual_Machine_description#Manual-install-of-postgresql]]
130 1 Herve Ballans
131 1 Herve Ballans
h2. NetDRMS databases
132 1 Herve Ballans
133 1 Herve Ballans
on /DATABASES
134 1 Herve Ballans
135 1 Herve Ballans
(Note  : section 2.4 dans doc netdrms first install)
136 1 Herve Ballans
137 1 Herve Ballans
<pre>
138 1 Herve Ballans
# mkdir data
139 1 Herve Ballans
# mkdir data_sums
140 7 Pablo Alingery
# mkdir data_monitor
141 1 Herve Ballans
# chown postgres:postgres data
142 1 Herve Ballans
# chown postgres:postgres data_sums
143 7 Pablo Alingery
# chown postgres:postgres data_monitor
144 1 Herve Ballans
</pre>
145 1 Herve Ballans
146 1 Herve Ballans
h3. Initialisation des 2 serveurs data et data_sums
147 1 Herve Ballans
148 1 Herve Ballans
En tant qu'utilisateur postgres
149 1 Herve Ballans
<pre>
150 1 Herve Ballans
# su - postgres
151 1 Herve Ballans
152 1 Herve Ballans
$ initdb --locale=C -D data -A md5 -W
153 1 Herve Ballans
(no password)
154 1 Herve Ballans
155 2 Herve Ballans
Success. You can now start the database server using:
156 2 Herve Ballans
157 2 Herve Ballans
    postgres -D data
158 2 Herve Ballans
or
159 2 Herve Ballans
    pg_ctl -D data -l logfile start
160 2 Herve Ballans
161 2 Herve Ballans
162 1 Herve Ballans
$ initdb --locale=C -D data_sums -A md5 -W
163 1 Herve Ballans
(no password)
164 2 Herve Ballans
165 2 Herve Ballans
Success. You can now start the database server using:
166 2 Herve Ballans
167 2 Herve Ballans
    postgres -D data_sums
168 2 Herve Ballans
or
169 2 Herve Ballans
    pg_ctl -D data_sums -l logfile start
170 2 Herve Ballans
171 8 Pablo Alingery
$ initdb --locale=C -D data_monitor -A md5 -W
172 8 Pablo Alingery
(no password)
173 8 Pablo Alingery
174 8 Pablo Alingery
Success. You can now start the database server using:
175 8 Pablo Alingery
176 8 Pablo Alingery
    postgres -D data_monitor
177 8 Pablo Alingery
or
178 8 Pablo Alingery
    pg_ctl -D data_monitor -l logfile start
179 8 Pablo Alingery
180 2 Herve Ballans
181 1 Herve Ballans
</pre>
182 2 Herve Ballans
183 2 Herve Ballans
184 1 Herve Ballans
185 1 Herve Ballans
Edition des fichiers postgresql.conf pour configurer les bons ports d'écoute :
186 1 Herve Ballans
listen_addresses = '*'
187 1 Herve Ballans
data -> port 5432
188 1 Herve Ballans
data_sums -> port 5434
189 10 Pablo Alingery
data_monitor -> port 5436
190 1 Herve Ballans
191 10 Pablo Alingery
192 1 Herve Ballans
Edition des fichiers data*/pg_hba.conf : remplacer md5 par trust
193 1 Herve Ballans
<pre>
194 1 Herve Ballans
#"local"
195 1 Herve Ballans
local   all             all                                     trust
196 1 Herve Ballans
#"IPv4"
197 1 Herve Ballans
host   all             all                                     trust
198 1 Herve Ballans
</pre>
199 1 Herve Ballans
200 10 Pablo Alingery
Démarrage des 3 bases :
201 1 Herve Ballans
202 1 Herve Ballans
<pre>
203 1 Herve Ballans
# su - postgres
204 1 Herve Ballans
$ cd /DATABASES
205 21 Pablo Alingery
$ pg_ctl -D data -l ./PG_LOGS/data.log start
206 21 Pablo Alingery
$ pg_ctl -D data_sums -l ./PG_LOGS/data_sums.log start
207 21 Pablo Alingery
$ pg_ctl -D data_monitor -l ./PG_LOGS/data_monitor.log start
208 20 Pablo Alingery
209 20 Pablo Alingery
note :
210 20 Pablo Alingery
PG_LOGS is the directory for logs 
211 10 Pablo Alingery
212 1 Herve Ballans
</pre>
213 1 Herve Ballans
214 1 Herve Ballans
	createdb --locale C -E LATIN1 -T template0 ias_sdo
215 1 Herve Ballans
	createdb --locale C -E LATIN1 -T template0 -p 5434 ias_sdo_sums
216 12 Pablo Alingery
        createdb --locale C -E LATIN1 -T template0 -p 5436 ias_sdo_monitor
217 1 Herve Ballans
218 1 Herve Ballans
h2. Installation de l'outil NetDRMS
219 1 Herve Ballans
220 23 Pablo Alingery
On se base sur la doc dipsonible ici : [[http://inf-redmine.ias.u-psud.fr/redmine/attachments/download/114/Netdrms_First_Install.odt]]
221 1 Herve Ballans
222 1 Herve Ballans
223 22 Pablo Alingery
Les sources sont dans : http://jsoc.stanford.edu/netdrms/dist/
224 24 Pablo Alingery
/usr/local/netdrms_8.10/
225 1 Herve Ballans
226 1 Herve Ballans
(Pour comparaison avec le serveur en production, on copie également le dossier netdrms_2.4 de sdo)
227 1 Herve Ballans
228 1 Herve Ballans
on créé un lien symbolique netdrms_current qui pointe sur la dernière release
229 25 Pablo Alingery
ln -s netdrms_8.10/ netdrms_current 
230 1 Herve Ballans
231 27 Pablo Alingery
Edition fichier config.local
232 27 Pablo Alingery
<pre>
233 27 Pablo Alingery
cp config.local.template config.local
234 27 Pablo Alingery
</pre>
235 1 Herve Ballans
236 29 Pablo Alingery
237 32 Herve Ballans
Creation de 2 répertoires : 
238 29 Pablo Alingery
<pre>
239 1 Herve Ballans
mkdir /usr/local/netdrms_8.10/logs/SUM
240 32 Herve Ballans
mkdir /usr/local/netdrms_8.10/logs/slony
241 28 Pablo Alingery
</pre>
242 27 Pablo Alingery
243 1 Herve Ballans
Voir le contenu du le fichier [[config.local]] à jour
244 1 Herve Ballans
245 1 Herve Ballans
Création d'un alias netdrms dans /root/.bashrc
246 1 Herve Ballans
<pre>
247 27 Pablo Alingery
alias netdrms='cd /usr/local/netdrms_current'
248 1 Herve Ballans
</pre>
249 1 Herve Ballans
250 31 Pablo Alingery
251 31 Pablo Alingery
Lancement configure
252 31 Pablo Alingery
<pre>
253 31 Pablo Alingery
./configure
254 31 Pablo Alingery
</pre>
255 31 Pablo Alingery
256 40 Pablo Alingery
h3. Modification du fichier /usr/local/netdrms_current/configure (Not Applied in NetDrms_8.10)
257 1 Herve Ballans
258 1 Herve Ballans
<pre>
259 1 Herve Ballans
# The system configuration for configure script
260 1 Herve Ballans
set PERLBIN = "/usr/bin/perl"
261 1 Herve Ballans
set PYBIN = "/usr/bin/python"
262 1 Herve Ballans
</pre>
263 1 Herve Ballans
264 34 Herve Ballans
h3. Compilation problem due to uncorrect variable types
265 34 Herve Ballans
266 35 Herve Ballans
Art (art.amezcua@stanford.edu) purpose us a workaround and send us 2 files with correct declaration :
267 34 Herve Ballans
268 42 Herve Ballans
SUMLIB_RmDo.pgc (diff with original file : [[diff_SUMLIB_RmDo.pgc]])
269 42 Herve Ballans
SUMLIB_RmDoX.pgc (diff with original file : [[diff_SUMLIB_RmDoX.pgc]])
270 34 Herve Ballans
271 36 Herve Ballans
<pre>
272 36 Herve Ballans
# wget http://jsoc.stanford.edu/~arta/SUMLIB_RmDo.pgc
273 36 Herve Ballans
# wget http://jsoc.stanford.edu/~arta/SUMLIB_RmDoX.pgc
274 36 Herve Ballans
</pre>
275 36 Herve Ballans
276 34 Herve Ballans
Overwriting the existing files in the right place (base/sums/libs/pg), the command 'make' works well.
277 34 Herve Ballans
278 34 Herve Ballans
But there is still problem with 'make sums'
279 36 Herve Ballans
280 36 Herve Ballans
h3. Workaround to solve make sums problem
281 36 Herve Ballans
282 38 Herve Ballans
Modify [[sum_rpc.h]] in order to match the type of some variables
283 34 Herve Ballans
284 1 Herve Ballans
h3. Modification du fichier /usr/local/netdrms_current/build/jsoc_machine.csh
285 1 Herve Ballans
286 1 Herve Ballans
ligne 28 :
287 1 Herve Ballans
288 1 Herve Ballans
<pre>
289 1 Herve Ballans
  case "x86_64":
290 1 Herve Ballans
      echo linux_x86_64
291 16 Herve Ballans
      breaksw
292 1 Herve Ballans
</pre>
293 1 Herve Ballans
294 43 Pablo Alingery
h3. Copier /usr/local/netdrms_2.4_release/base/drms/apps/serverdefs.h dans /usr/local/netdrms_current/base/drms/apps (not applied in NetDrms_8.10)
295 1 Herve Ballans
296 44 Pablo Alingery
h3. Modification du fichier /usr/local/netdrms_current/configure (not applied in NetDrms_8.10)
297 1 Herve Ballans
298 1 Herve Ballans
au lieu de $? en csh on va mettre plutot $status
299 1 Herve Ballans
300 1 Herve Ballans
ligne 110 :
301 1 Herve Ballans
302 1 Herve Ballans
<pre>
303 1 Herve Ballans
  if ($status==0) 
304 1 Herve Ballans
</pre>
305 1 Herve Ballans
306 4 Herve Ballans
et ligne 123 :
307 1 Herve Ballans
308 1 Herve Ballans
<pre>
309 1 Herve Ballans
  if ($status==0) 
310 1 Herve Ballans
</pre>
311 1 Herve Ballans
312 4 Herve Ballans
Lancement :
313 4 Herve Ballans
<pre>
314 4 Herve Ballans
./configure
315 1 Herve Ballans
</pre>
316 1 Herve Ballans
317 1 Herve Ballans
h3. Installation des libraries libtar-dev, libcurl3-dev et libecpg-dev
318 1 Herve Ballans
319 1 Herve Ballans
<pre>
320 4 Herve Ballans
apt-get install libtar libtar-dev
321 1 Herve Ballans
</pre>
322 1 Herve Ballans
323 1 Herve Ballans
<pre>
324 1 Herve Ballans
apt-get install libcurl3-dev
325 1 Herve Ballans
</pre>
326 1 Herve Ballans
327 1 Herve Ballans
<pre>
328 1 Herve Ballans
apt-get install libecpg-dev
329 1 Herve Ballans
</pre>
330 1 Herve Ballans
331 45 Pablo Alingery
h3. #H4ck 2 Malade #PabloR0cks# (Not Applied in NetDrm_8.10)
332 1 Herve Ballans
333 1 Herve Ballans
Modification du fichier /usr/include/stdint.h
334 1 Herve Ballans
335 17 Herve Ballans
ligne 55 : long int remplacé par long long int
336 17 Herve Ballans
337 17 Herve Ballans
<pre>
338 17 Herve Ballans
#if __WORDSIZE == 64
339 17 Herve Ballans
typedef unsigned long int       uint64_t; --> ici long long int
340 17 Herve Ballans
#else
341 17 Herve Ballans
__extension__
342 17 Herve Ballans
typedef unsigned long long int  uint64_t;
343 17 Herve Ballans
#endif
344 17 Herve Ballans
</pre>
345 1 Herve Ballans
346 1 Herve Ballans
"Allo Linus ?!?.."
347 1 Herve Ballans
348 1 Herve Ballans
h3. Compilation
349 1 Herve Ballans
350 1 Herve Ballans
<pre>
351 1 Herve Ballans
# make
352 1 Herve Ballans
# make sums
353 1 Herve Ballans
</pre>
354 1 Herve Ballans
355 1 Herve Ballans
NB : lib64 does not exist on debian 8. so ln -s /usr/lib lib64
356 6 Pablo Alingery
357 46 Pablo Alingery
h2. make sums KO  (Not applied in NetDrms_8.10)
358 1 Herve Ballans
359 6 Pablo Alingery
Solution found : Take old lib libcrypto instead libssl
360 6 Pablo Alingery
361 16 Herve Ballans
dans le fichier base/sums/apps/Rules.mk ligne 51 
362 6 Pablo Alingery
replace -lssl by -lcrypto LD flag
363 6 Pablo Alingery
364 14 Herve Ballans
h2. Installation de Jetty
365 14 Herve Ballans
366 14 Herve Ballans
Téléchargement du paquet jetty_install_kit_v1.4.2
367 14 Herve Ballans
368 14 Herve Ballans
<pre>
369 14 Herve Ballans
# cd /usr/local
370 14 Herve Ballans
# wget http://vso.tuc.noao.edu/VSO/slony_proxy/jetty_install_kit_v1.4.2.tar.gz
371 14 Herve Ballans
# tar xzvf jetty_install_kit_v1.4.2.tar.gz
372 14 Herve Ballans
# cd jetty_install_kit_v1.4.2
373 14 Herve Ballans
# ./install_jetty.sh
374 14 Herve Ballans
</pre>
375 14 Herve Ballans
376 14 Herve Ballans
Paramètres à modifier :
377 14 Herve Ballans
JETTY_GROUP= ias
378 14 Herve Ballans
JMD_INSTALL_DIR=/usr/local/jmd
379 14 Herve Ballans
JMD_SUPPORTING_SCRIPTS= /usr/local/jmd/vso/scripts
380 14 Herve Ballans
/usr/local/jmd/databases/derby
381 14 Herve Ballans
382 15 Pablo Alingery
Cherche la commande ij
383 14 Herve Ballans
rajouter son chemin dans le path
384 14 Herve Ballans
vi ~/.bashrc
385 14 Herve Ballans
386 1 Herve Ballans
387 15 Pablo Alingery
<pre>
388 15 Pablo Alingery
# set PATH so it includes user's private bin if it exists
389 15 Pablo Alingery
if [ -d "$HOME/bin" ] ; then
390 15 Pablo Alingery
    PATH="$HOME/bin:$PATH"
391 15 Pablo Alingery
fi
392 1 Herve Ballans
393 15 Pablo Alingery
# Added by Elie for netdrms
394 15 Pablo Alingery
#Modif Pablo 07/06/2010
395 15 Pablo Alingery
PATH="$HOME/netdrms_current/bin/linux_x86_64:$PATH"
396 15 Pablo Alingery
PATH="$HOME/netdrms_current/scripts:$PATH"
397 15 Pablo Alingery
PATH="/usr/local/jmd/jetty/bin:$PATH"
398 15 Pablo Alingery
PATH="/usr/local/jmd/vso/scripts:$PATH"
399 15 Pablo Alingery
PATH="/usr/local/pgsql/bin:$PATH"
400 15 Pablo Alingery
PATH="/usr/local/netdrms/scripts:$PATH"
401 15 Pablo Alingery
#2014-12-17 Avec Herve et Pablo on pense que la ligne suivante est intutile as it is f.. install in /usr/local/lib
402 15 Pablo Alingery
PATH="/home/production/cfitsio:$PATH"
403 15 Pablo Alingery
#Done
404 1 Herve Ballans
405 15 Pablo Alingery
DERBY_HOME=/usr/local/jmd/derby
406 15 Pablo Alingery
export DERBY_HOME
407 1 Herve Ballans
408 15 Pablo Alingery
export CVSROOT=:pserver:anonymous@solarch.tuc.noao.edu:2401/vtarc1/vso/cvsroot
409 15 Pablo Alingery
410 15 Pablo Alingery
 #Added by Elie for jetty
411 15 Pablo Alingery
PATH="/usr/local/jmd/derby/bin:$PATH"
412 15 Pablo Alingery
413 15 Pablo Alingery
</pre>
414 14 Herve Ballans
415 1 Herve Ballans
h2. TO BE DONE FURTHER
416 9 Pablo Alingery
417 6 Pablo Alingery
418 11 Pablo Alingery
Démarrage des 3 bases automatiquement
419 11 Pablo Alingery
420 13 Pablo Alingery
Installation de dblink pour postgres
421 6 Pablo Alingery
422 1 Herve Ballans
423 1 Herve Ballans
h3. Modification du fichir config.local pour la souscription au jsoc
424 1 Herve Ballans
425 1 Herve Ballans
<pre>
426 1 Herve Ballans
# NetDRMS users can request subdirectories from the Stanford proj directories 
427 1 Herve Ballans
# (e.g., JSOC/proj/util). These users will need to contact Stanford and obtain
428 1 Herve Ballans
# the source subdirectories desired. They will then place these subdirectories
429 1 Herve Ballans
# in the JSOC/proj directory of their NetDRMS release. To properly build 
430 1 Herve Ballans
# targets in these subdirectories, using the JSOC make system, the user needs
431 1 Herve Ballans
# to add entries to this configuration file - one entry for each subdirectory
432 1 Herve Ballans
# that contains source code to be compiled. Each entry is a space-separated pair
433 1 Herve Ballans
# of strings: the string "PROJDIR" followed by a subdirectory (of the proj 
434 1 Herve Ballans
# directory).  For example:
435 1 Herve Ballans
#
436 1 Herve Ballans
# PROJDIR     util/apps
437 1 Herve Ballans
# PROJDIR     util/libs
438 1 Herve Ballans
# 
439 1 Herve Ballans
# NOTE: It is not sufficient to list only a parent directory, like util. Source code
440 1 Herve Ballans
# in child directories will not automatically be compiled.
441 1 Herve Ballans
</pre>
442 18 Herve Ballans
443 18 Herve Ballans
h3. Python library for multi-threaded SUMS
444 18 Herve Ballans
445 18 Herve Ballans
Installation de la librairie python3.4m