1 |
Install procedure 3.0 - Nagni 04 April 2006 |
2 |
|
3 |
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 |
10 |
|
11 |
#-----YODA's Environment----------------------- |
12 |
# this variable define where YODA will write the managed files |
13 |
export YODA_DATA= YourPathToStoreUnpackedFiles |
14 |
#-----YODA's Environment----------------------- |
15 |
|
16 |
#-----Cern's ROOT Environment----------------------- |
17 |
export ROOTSYS=/usr/share/root |
18 |
export PATH=$ROOTSYS/bin:$PATH |
19 |
export LD_LIBRARY_PATH=$ROOTSYS/lib |
20 |
#-----Cern's ROOT Environment----------------------- |
21 |
|
22 |
2) check that you have installed |
23 |
---->log4cxx (jakarta logger for c++ programs) |
24 |
---->g77 (GNU FORTRAN Compiler) |
25 |
---->LIBTOOL (compiler utility) |
26 |
|
27 |
3) create a directory (say YOUR_YODA) and copy the source into it |
28 |
|
29 |
4) execute the following commands (please customize the ./configure line according to your system) |
30 |
|
31 |
$ 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 |
38 |
$ automake -a |
39 |
$ autoconf |
40 |
$ ./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 |
44 |
$ ./configure --help |
45 |
|
46 |
$ ./configure |
47 |
|
48 |
$ make |
49 |
|
50 |
then became ROOT user to install YODA |
51 |
|
52 |
$ make install |
53 |
|
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 |
|
107 |
|
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. |