ILCSOFT installation on UBUNTU 12.04 ########################### # (1) System preparation: # ########################### In order to be able to build and use ilcsoft at all; vanilla Ubuntu needs several packages. #--- mysql includes etc. sudo apt-get install libmysqlclient-dev #--- create a links for mysql (if missing): sudo ln -s /usr/lib/x86_64-linux-gnu/ /usr/lib64 sudo ln -s /usr/lib64/libmysqlclient.so.18 /usr/lib64/libmysqlclient.so #--- install code mgmt and build tools: sudo apt-get install subversion sudo apt-get install cvs sudo apt-get install cmake sudo apt-get install cmake-curses-gui #ccmake sudo apt-get install doxygen sudo apt-get install latex2html #--- graphics stuff (X and OpenGL): sudo apt-get install libxext-dev sudo apt-get install freeglut3-dev sudo apt-get install libxmu-dev libxi-dev #--- ROOT stuff sudo apt-get install dpkg-dev sudo apt-get install libxpm-dev sudo apt-get install libxft-dev sudo apt-get install python2.7-dev #--- javac: sudo apt-get install default-jdk #--- if needed/wanted: cernlib and gfortran sudo apt-get install cernlib sudo apt-get install gfortran OR: in single line: sudo apt-get install libmysqlclient-dev subversion cvs cmake cmake-curses-gui doxygen latex2html libxext-dev freeglut3-dev libxmu-dev libxi-dev dpkg-dev libxpm-dev libxft-dev python2.7-dev default-jdk cernlib gfortran && sudo ln -s /usr/lib/x86_64-linux-gnu/ /usr/lib64 && sudo ln -s /usr/lib64/libmysqlclient.so.18 /usr/lib64/libmysqlclient.so ############################ # (2) ilcsoft installation # ############################ The usual next step is to download an ilcinstall version from https://svnsrv.desy.de/public/ilctools/ilcinstall/tags/v0x-yz The default scripts are guaranteed to work for the current version of Scientific Linux (e.g. 5 or 6). This doesn't work for Ubuntu. The following list describes the issues and the subsequent changes to the different files needed to adapt the ilcinstall routines to make it work for Ubuntu. Super-short howto: (1) download ilcinstall from https://svnsrv.desy.de/public/ilctools/ilcinstall/tags/v0x-yz (2) change files according to list below (3) install basic tools with (the "-i" flag installs it actually; drop it for a dry check) ./ilcsoft-install releases/v0x-yz/releases-base.cfg -i (4) install ilcsoft with (the "-i" flag installs it actually; drop it for a dry check) ./ilcsoft-install releases/v0x-yz/releases-ilcsoft.cfg -i (5) use ilcsoft :-) =================================================================== =================================================================== ########################################## # File: releases/v0x-yz/release-base.cfg # ########################################## * Issue: geant is not compiled with gdml support, which is needed to install Mokka !! Beware: this needs Xerces to be installed. ! Add line: geant4.envcmake["GEANT4_USE_GDML"]='ON' // Comment: If the change is not performed, Mokka won't be available. =================================================================== =================================================================== ############################################# # File: releases/v0x-yz/release-versions.py # ############################################# * Issue: if you don't change the install path, ilcsoft will be installed where you don't want to. ! Change accordingly to your requirement: ilcsoft_install_prefix = "/where/ever/" ++++++++++++++++++ * Issue: MySQL is installed somewhere else on Ubuntu. ! Comment out: #MySQL_version = "5.0.45" #MySQL_path = ilcPath + "/mysql/" + MySQL_version ! Add: MySQL_path = "/usr" ++++++++++++++++++ * Issue: java is accessed differently on Ubuntu. ! Comment out: #Java_path = ilcPath + "/java/" + Java_version # comment out to try auto-detect +++++++++++++++++++ * Issue: CERNLIB is available on Ubuntu, but not checked.[*] ! Comment out: #CERNLIB_version = "2006" #CERNLIB_path = ilcPath + "/cernlib/" + CERNLIB_version [*] feel free to try (apt-get install cernlib) and report if it works. =================================================================== =================================================================== ############################################# # File: releases/v0x-yz/release-ilcsoft.cfg # ############################################# * Issue: FORTRAN-free installation, in case you don't want or need the FORTRAN-dependent packages. ! Add line: ilcsoft.module("MarlinReco").envcmake["MARLINRECO_FORTRAN"]='OFF' ! Comment out (this would need CERNLIB): #ilcsoft.install( FastJetClustering( FastJetClustering_version )) * Issue: actually none, but if you only need C++, then java-lcio isn't needed: ! Add line: ilcsoft.module("LCIO").envcmake['INSTALL_JAR']='OFF' =================================================================== ===================================================================