Dependencies on 3rd Party Software
The NEXT offline code depends upon five libraries. Below you will find what they are, what they are used for in the NEXT offline code, how to install them, which is the minimum version you should install, and which environment variables you should set.
Do not try to install the NEXT offline code prior to the installation of this 3rd party software: your installation will fail!
MySQL?
Note: installation of the MySQL? client library is optional, for now, as access to the MySQL? -based DB is still in development mode.
In order to perform database queries from within
nextoffline
modules, you will need also the
MySQL? Connector/C
client library, also known simply as the
libmysqlclient library
. You can find documentation about
MySQL? at:
http://www.mysql.com/.
You can download
libmysqlclient
binaries at:
Once
libmysqlclient
is installed, make sure to have:
- The directory where the
mysql
binary has been installed in your $PATH
- A
.my.cnf
file in your home directory with the following contents:
[client]
host=neutrinos1.ific.uv.es
port=3307
user=next
password=[put here usual password]
database=nextdb
To make sure
MySQL? works, you can try the following commands:
mysql
use test;
show tables;
quit;
ROOT
You can find documentation about ROOT at:
http://root.cern.ch/drupal/.
ROOT is used extensively within our code for data I/O, histograms, graphics, mathematical libraries.
Instructions on how to install ROOT from source can be found at:
http://root.cern.ch/drupal/content/installing-root-source.
You can also decide to install one of the pre-built binaries for your architecture. See available binaries at:
http://root.cern.ch/drupal/content/downloading-root
You should install ROOT version >= 5.14.
Once ROOT is installed, make sure to have:
-
$ROOTSYS
environment variable pointing to the ROOT top-level directory, eg the one above ROOT's lib
-
$ROOTSYS/bin
in your $PATH
-
$ROOTSYS/lib
in your $LD_LIBRARY_PATH
(or $DYLD_LIBRARY_PATH
)
If you are using
MySQL? capabilities, you should have
mysql
listed when you type:
root-config --features
. If that is not the case (rare), reconfigure ROOT with the following option:
./configure --enable-mysql
Xerces-C++
You can find documentation about Xerces-C++ at:
http://xerces.apache.org/xerces-c/.
Xerces-C++ is used within our code for parsing XML job and module configuration files.
You can find both binary and source distributions (as well as build instructions if you choose the latter) at:
http://xerces.apache.org/xerces-c/.
You should install Xerces-C++ version >= 2.7.0
Once Xerces-C++ is installed, make sure to have:
-
$XERCESROOT
environment variable pointing to the Xerces-C++ top-level directory, eg the one above Xercesc's lib
-
$XERCESROOT/lib
in your $LD_LIBRARY_PATH
(or $DYLD_LIBRARY_PATH
)
FMWK
You can find documentation about FMWK at:
https://cdcvs.fnal.gov/redmine/projects/nusoft/wiki/FMWK
FMWK is the base framework code where we plug NEXT offline modules into. FMWK provides a framework for modularized reconstruction and analysis jobs, a run-time configuration framework, event data containers and I/O (together with ROOT), standard methods to read and write user-created objects to events, an event display shell, database interface tools, and XML interface tools.
Rather than downloading the FMWK version on the web page above, you should use the "autotoolized" version in the NEXT SVN repository:
svn export svn://next.ific.uv.es:/svn/next/offline/FMWK/base/tags/R2013-11-11/fmwk-R2013-11-11.tar.gz
tar zxvf fmwk-R2013-11-11.tar.gz
which will create a
fmwk-R2013-11-11
directory with the source code. You can find instructions on how to build the code in the README file included in the tarball.
Once FMWK base code is installed, make sure to have:
- FMWK's
bin
directory (eg, where fmwk-config
is) in your $PATH
- FMWK's
lib
directory (eg, where libConfig.so
is) in your $LD_LIBRARY_PATH
(or $DYLD_LIBRARY_PATH
)
IRENE
IRENE is used as the event data model for the detector simulation output read by the NEXT offline code. To install IRENE, look at the documentation in
SoftwareIRENE.
Once IRENE is installed, make sure to have:
- IRENE's
bin
directory (where irene-config
is) in your $PATH
- IRENE's
lib
directory in your $LD_LIBRARY_PATH
(or $DYLD_LIBRARY_PATH
)
Please, read the short presentation about the usage of IRENE in nextoffline that you can find in attachment.
That's all! You are now ready to install the NEXT offline code.
--
MichelSorel - 12 Mar 2010