1 |
Install procedure 1.1 - Nagni 11 May 2004 |
Install procedure 3.0 - Nagni 04 April 2006 |
2 |
|
|
3 |
To install YODA: |
To install YODA you can either use traditional Makefile (deprecated) or ANT tool (suggested). |
4 |
|
|
5 |
|
/**************/ |
6 |
|
USING Makefile |
7 |
|
/**************/ |
8 |
|
|
9 |
1) check that you have installed ROOT and your enviroment have defined |
1) check that you have installed ROOT and your enviroment have defined |
10 |
|
|
11 |
#-----YODA's Environment----------------------- |
#-----YODA's Environment----------------------- |
12 |
# this variable define where YODA will write the managed files |
# this variable define where YODA will write the managed files |
13 |
export YODA_DATA= YourPathToStoreUnpackedFiles |
export YODA_DATA= YourPathToStoreUnpackedFiles |
|
export YODA_LOGS= YourPathToLogs |
|
14 |
#-----YODA's Environment----------------------- |
#-----YODA's Environment----------------------- |
15 |
|
|
16 |
#-----Cern's ROOT Environment----------------------- |
#-----Cern's ROOT Environment----------------------- |
20 |
#-----Cern's ROOT Environment----------------------- |
#-----Cern's ROOT Environment----------------------- |
21 |
|
|
22 |
2) check that you have installed |
2) check that you have installed |
23 |
---->log4cpp (logger for c++ programs) |
---->log4cxx (jakarta logger for c++ programs) |
24 |
---->g77 (GNU FORTRAN Compiler) |
---->g77 (GNU FORTRAN Compiler) |
25 |
---->LIBTOOL (compiler utility) |
---->LIBTOOL (compiler utility) |
26 |
|
|
27 |
3) create a directory (say YOUR_YODA) and copy the source into it |
3) create a directory (say YOUR_YODA) and copy the source into it |
28 |
|
|
29 |
4) from LIBTOOL directory copy into YOUR_YODA the following files |
4) execute the following commands (please customize the ./configure line according to your system) |
|
|
|
|
config.guess |
|
|
config.sub |
|
|
ltmain.sh |
|
|
|
|
|
5) execute the following commands |
|
30 |
|
|
31 |
$ cd $YODA_ROOT |
$ cd $YODA_ROOT |
32 |
|
$ autoheader |
33 |
|
$ libtoolize (eventually "libtoolize --force") |
34 |
|
$ export CFLAGS="-g -O4" |
35 |
|
$ export FFLAGS="-g -O0 -keepC" |
36 |
|
$ export CXXFLAGS="-g -O4" |
37 |
$ aclocal |
$ aclocal |
38 |
$ automake -a |
$ automake -a |
39 |
$ autoconf |
$ autoconf |
40 |
$ export CXXFLAGS="-g" |
$ ./configure --prefix=/path/where/you/want/to/install --with-log4cxx=/opt/log4cxx --enable-gprof=no |
41 |
|
$ make |
42 |
|
|
43 |
that a look at the configure options |
that a look at the configure options |
44 |
$ ./configure --help |
$ ./configure --help |
45 |
|
|
|
if you want to install executable in the same directory of source code |
|
46 |
$ ./configure |
$ ./configure |
47 |
|
|
48 |
|
$ make |
49 |
|
|
50 |
else |
then became ROOT user to install YODA |
|
$ ./configure --libexecdir=yourDirectory |
|
51 |
|
|
52 |
and finally |
$ make install |
53 |
$ make |
|
54 |
|
if everthing has been correct typing |
55 |
|
|
56 |
|
$ yoda |
57 |
|
|
58 |
|
the program should reply something like below |
59 |
|
|
60 |
|
You have forgotten the file name. |
61 |
|
Try '-help' for more information. |
62 |
|
|
63 |
|
|
64 |
|
/**************/ |
65 |
|
USING ANT |
66 |
|
/**************/ |
67 |
|
|
68 |
|
For this you should have installed moreover the ANT tool also the ant-contrib package. Once you have edited and configured the "value"s of the following parameters in the build.xml file |
69 |
|
|
70 |
|
<!--Here is where all the stuff will be installed--> |
71 |
|
<property name="pamSoftware" value="${env.HOME}/pamela"/> |
72 |
|
|
73 |
|
<!-- CERN's ROOT base directory --> |
74 |
|
<property name="root" value="/opt/root"/> |
75 |
|
|
76 |
|
<!-- LOG4CXX base directory --> |
77 |
|
<property name="log4cxx" value="/opt/log4cxx"/> |
78 |
|
|
79 |
|
<!-- ant-contrib base directory --> |
80 |
|
<property name="ant-contrib.lib" value="/opt/ant-contrib/lib"/> |
81 |
|
|
82 |
|
you can run (in the same folder of build.xml) |
83 |
|
|
84 |
|
ant compileYoda |
85 |
|
|
86 |
|
once you verified that everithing is ok run |
87 |
|
|
88 |
|
ant deployYoda |
89 |
|
|
90 |
|
At the end you will have into the "pamSoftware" folder a structure like |
91 |
|
./bin/yoda |
92 |
|
./lib/libyoda.so |
93 |
|
./include/several ".h" files |
94 |
|
|
95 |
|
Check the funzionality typing |
96 |
|
|
97 |
|
/"pamSoftware"/bin/yoda |
98 |
|
|
99 |
|
|
100 |
|
-----> Troubleshoting <---- |
101 |
|
If you get a kind of "libxxxx.so" not found check that |
102 |
|
|
103 |
|
log4cxx/lib, root/lib, /"pamSoftware"/lib/ |
104 |
|
|
105 |
|
are in your LD_LIBRARY_PATH environment. |
106 |
|
|
|
------>NOTE<------ |
|
|
This procedure will generate the code in the same directory YODA |
|
|
sources has been copied. |
|
|
The executable file name is techmodelreader and it's located in |
|
|
TECHMODEL directory. |
|
|
To make yoda available using just the command "yoda" from every location |
|
|
just making a softlink to techmodel/.libs/techmodelreader in /usr/bin |
|
|
directory (root privileges are needed!) |
|
107 |
|
|
|
ln -s techmodel/.libs/techmodelreader /usr/bin/yoda |
|
108 |
|
|
109 |
|
------>NOTE 1<------ |
110 |
|
On the source code is supplied also a tipical configuratin file for the Log4cxx tool. |
111 |
|
The file is named log4cxx.conf and is designed to be put into the YODA_DATA directory. |
112 |
|
Notice that to set the output detail level you have to modify the log4cxx.conf |
113 |
|
according to your needs. |
114 |
|
|
115 |
|
------>NOTE 2<------ |
116 |
|
Because of major changes in ROOT, Trees produced with a version of ROOT greater than 4.01/02 |
117 |
|
cannot be read by older ROOT versions. |
118 |
|
|
119 |
|
------>NOTE 3<------ |
120 |
|
If you are doing an upgrading and you are installing it in a different location be careful to not use in the LD_LIBRARY_PATH both new and old yodalib.so. |