| 1 | Install procedure 2.0 - Nagni 20 September 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 |  |  | 
| 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) execute the following commands | 4) execute the following commands (please customize the ./configure line according to your system) | 
| 30 |  |  | 
| 31 | $ cd $YODA_ROOT | $ cd $YODA_ROOT | 
| 32 |  | $ autoheader | 
| 33 | $ libtoolize       (eventually "libtoolize --force") | $ libtoolize       (eventually "libtoolize --force") | 
| 34 |  | $ export CFLAGS="-g -O4" | 
| 35 |  | $ export FFLAGS="-g -O0 -keepC" | 
| 36 |  | $ export CXXFLAGS="-g -O4" | 
| 37 | $ aclocal | $ aclocal | 
|  | $ autoheader |  | 
| 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/local/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. |