]> git.uio.no Git - u/mrichter/AliRoot.git/blame - HLT/README
use predefined origins in definitions
[u/mrichter/AliRoot.git] / HLT / README
CommitLineData
b521659f 1Package: ALICE HLT
2
0fc7626e 3This package implements the ALICE High Level Trigger analysis framework.
b521659f 4All contributions are under the terms of the
5GNU General Public License as published by the Free Software
6Foundation. Also see files AUTHORS and THANKS.
7
8This packages is maintained by Matthias.Richter@ift.uib.no
9Comments, bug reports, suggestions welcome!
10
9be2600f 11++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
12+ TOC
13++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
14+ 1. Overview
15+ 2. Requirements
16+ 3. Setting up a version retrieved from CVS
17+ 4. Modifying a distributed package
18+ 5. Installation
19+ 6. Documentation
20+ 7. Further information
21+ 8. Reporting bugs/Asking for support
22+ 9. Committing to the AliRoot CVS
23++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
c160eda8 24
251. Overview
26===========
0fc7626e 27This package provides a compilation of shared libraries of the ALICE
08e73b29 28HLT project and is intended for stand-alone compilation, i.e. not as part
29of the AliRoot compilation.
30
9be2600f 31 - \b BASE: The base library (libHLTbase.so) provides the common interface for
32 HLT processing components, the binding into the ALICE offline project
33 AliRoot and a pure C interface to the HLT on-line framework
34 (Publisher/Subscriber framework)
08e73b29 35
9be2600f 36 - \b SampleLib: The sample library contains examples for component
37 implementation and a tutorial.
b521659f 38
9be2600f 39 - \b TPCLib: The HLT code for the TPC
40 - \b TPCLib/OnlineDisplay: HLT visualization code for the TPC
fc455fba 41
9be2600f 42 - \b PHOS: The HLT code for PHOS
08e73b29 43
9be2600f 44 - \b TRD: The HLT code for TRD
08e73b29 45
c160eda8 462. Requirements
47===============
08e73b29 48The package needs both ROOT and AliRoot. Both must be set up in the
49usual way (ROOTSYS, ALICE_ROOT, library locations evtl. specified in
50LD_LIBRARY_PATH, ...). Actually, the BASE and SampleLib modules are
51not dependend on AliRoot. The TPCLib does.
52
78b557c2 53To set up a version retrieved from CVS, autoconf 2.57, automake 1.6
54,and libtool 1.4 or higher versions are required. Thats the versions
55which come with the Scientific Linux CERN 3. The same applies if
56you want to change the Makefiles.
57
58If your GNU build tools are too old, ask the maintainers for a distributed
59package.
60
c160eda8 613. Setting up a version retrieved from CVS
62==========================================
b521659f 63Skip this section if you have started from the tar ball.
64
0fc7626e 65A version checked out from CVS requires a few steps to set up the Makefiles.
b521659f 66Go to the directory and run
9be2600f 67
68 autoreconf -i -f
b521659f 69
70Then continue with the package configuration described in the 'Installation'
71section.
72
c160eda8 734. Modifying a distributed package
74==================================
b521659f 75If you are going the modify a distributed package you might need to re-make
76the GNU build system by running
9be2600f 77
78 autoreconf -f -i
b521659f 79
80Please notify the authors about bug fixes/corrections/extensions you made if
81you consider them worth to be merged into the project.
82
83Then continue with the package configuration described in the 'Installation'
84section.
85
c160eda8 865. Installation
87===============
b521659f 88Package build relies on the GNU triplet configure, make and make install.
0fc7626e 89In order to keep the development directory clean, it is recommended to
90use a separate build directory.
b521659f 91
9be2600f 92\b NOTE: Autotools creates the Makefiles from templates. All \b changes have to
93be done to the \b Makefile.am templates.
94
fc455fba 95It is recommended to read the complete section before the build process.
96
975.1 For the impatiant user
98--------------------------
99
b521659f 100 mkdir build
101 cd build
102 ../configure
103 make
104 make install
105
fc455fba 1065.2 Installation directory
107--------------------------
600e6a1b 108The default install directory is set to the current directory ($PWD). To
9be2600f 109override the default directory use the option
110 --prefix=<dir>.
111More information can be obtained from the configure script by running it with
112option --help. All binary libraries will be installed under
113 <prefix>/lib.
114
115If the directory is equal to $ALICE_ROOT, the libraries will be installed under
116 <prefix>/lib/tgt_<arch>
117as used for AliRoot. This is a custom extension in
6c1a9d9e 118order to adapt to the specific AliRoot installation directories.
b521659f 119
fc455fba 1205.3 For the AliRoot user
121------------------------
122To install all libraries in the AliRoot lib dir:
123
124 mkdir build
125 cd build
126 ../configure --prefix=$ALICE_ROOT
127 make
128 make install
b521659f 129
fc455fba 1305.4 Package options
131-------------------
132Some important options (all options are on by default):
9be2600f 133
134 --disable-sample # disable compilation the sample library
135 --disable-tpc # disable compilation the TPC library
136 --disable-phos # disable compilation the PHOS library
137 --disable-trd # disable compilation the TRD library
138 --disable-aliroot-logging # disable logging
fc455fba 139
1405.5 External packages
141---------------------
142PubSub framework: the TPC online display needs the HOMER interface, which
143is currently part of the PubSub framework. It is planned to integrate it
9be2600f 144into AliRoot.<br>
fc455fba 145If the TPC online display is not necessary one can skip this option.
9be2600f 146
147 --with-pubsub=<dir> # the top dir of the HLT PubSub framework
fc455fba 148
1495.6 Final remarks/further information
150-------------------------------------
9be2600f 151\b Note: You can have several build directories with different configure
152options, but using the same source code.
08e73b29 153
b521659f 154If you need further information on the GNU build system, execute from the
155top directory:
9be2600f 156
157 ./configure --help | less
b521659f 158
159
c160eda8 1606. Documentation
161================
9be2600f 162Documentation is build as part of the build process if \b doxygen is installed.
163The documentation can be opended from the
164 doc/html/
165sub-folder of your build directory. E.g with a web browser like firefox
166(assuming you are in the build directory):<br>
167 firefox file://`pwd`/doc/html/index.html
168
169A special target can be used to make a tar ball out of the documentation (again
170provided you are in the build directory):<br>
171 (cd doc && make tar-ball)
172
173On-line documentation is available at
174 http://web.ift.uib.no/~kjeks/doc/alice-hlt/
08e73b29 175
c160eda8 1767. Further information
177======================
b521659f 178A wiki with detailed information is set up at
9be2600f 179 http://www.kip.uni-heidelberg.de/wiki/HLT
0fc7626e 180
c160eda8 1818. Reporting bugs/Asking for support
182====================================
0fc7626e 183Please include the following information into your request:
9be2600f 184 - config.log from your build directory
185 - output of the make process. Note: Redirect BOTH the stdout and stderr
186 channel to a log file. Redirection depends on the shell you are using:
0fc7626e 187 bash: make 2>&1 | tee make.log
188 csh: make |& tee make.log
9be2600f 189 The 'tee' command just duplicates the output.
190 - history of the commands you are using for compilation
191 history > history.log
c160eda8 192
1939. Committing to the AliRoot CVS
194================================
195For development of HLT analysis code check out a HEAD version from the
600e6a1b 196repository and implement your code.
197
198For committing do:
9be2600f 199 - 1. make sure that the code changes are correct <br><tt>
200 cvs diff | less </tt><br>
201 \b Remember to restore all temporary changes you made (e.g. log level)
202 - 2. cvs update
203 - 3. correct merging conflicts
204 - 4. compile and test your code again
205 - 5. send the whole HLT module except the build sub-directories to
206 Matthias.Richter@ift.uib.no
207 - 6. you will get a notification when the code is committed, right after that
208 you must either do another cvs update or check out the complete module
209 again in order to have the right CVS information.