Difference between revisions of "Solgemc installation outside JLAB"
(move scons_scripts up) |
(Rewrite following more straightforward second installation) |
||
Line 1: | Line 1: | ||
by Rich Holmes | by Rich Holmes | ||
− | I have been working on getting the Geant4 simulation and related software up and running on a non JLAB | + | I have been working on getting the Geant4 simulation and related software up and running on a couple of non JLAB systems; here are some notes on what I did most recently. I may be omitting some steps here and I definitely have rearranged the order and left out some steps that I tried but that didn't seem to give useful results, so there are no guarantees this will work for anyone else, but it should cut down on confusion, or so I hope. This should be a better example to follow than my previous one (thanks to better understanding on my part, and probably some improvements in the solgemc package itself), but you can [[Earlier solgemc installation outside JLAB|read about that too]] if you want. |
− | The target system for now is one running | + | The target system for now is one running Ubuntu 10.10 (32 bit i386). |
+ | |||
+ | Generally speaking what I tried to do was to set up a directory structure similar to what is installed using the gemc RPM; qt4 and geant4 already existed on this system but not necessarily configured as needed for gemc, so I put new installations into the new directory tree. | ||
+ | |||
+ | == initial setup == | ||
+ | # mkdir ~/jlab_software ''and cd there'' | ||
+ | # mkdir Linux_Ubuntu10.04-i686-gcc4.4.3 | ||
+ | |||
+ | == environment == | ||
+ | # svn checkout https://phys12svn.jlab.org/repos/trunk/ce ''in ~/jlab_software'' | ||
+ | # ''Edit to set DEFAULT_JLAB_ROOT to ~/jlab_software. Also edit default software versions below that as needed.'' | ||
+ | # ''Depending on your Linux distribution you may need to edit ce/osreleast.pl in the obvious place to set an appropriate value for $release. For my Ubuntu 10.10 installation this was not necessary.'' | ||
+ | # source ~/jlab_software/ce/jlab.csh | ||
== scons == | == scons == | ||
− | # '' | + | # ''Install scons using Ubuntu Software Center'' |
− | # svn checkout https://clas12svn.jlab.org/repos/trunk/clas12/scons_scripts/ | + | # svn checkout https://clas12svn.jlab.org/repos/trunk/clas12/scons_scripts/ ''in ~/jlab_software'' |
== Qt4 == | == Qt4 == | ||
− | # | + | # ''Download sources from http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-4.7.3.tar.gz'' |
− | # | + | # ''Install following https://gemc.jlab.org/gemc/Support/Entries/2011/1/22_Getting_and_Compiling_qt4.html into ~/jlab_software/Linux_Ubuntu10.04-i686-gcc4.4.3/qt'' |
== ROOT == | == ROOT == | ||
− | # ''Install ROOT as usual from source; use'' configure --enable-qt --enable-qtgsi | + | # ''Install ROOT as usual from source into ~/jlab_software/Linux_Ubuntu10.04-i686-gcc4.4.3/root ; use'' configure --enable-qt --enable-qtgsi |
− | == | + | == CLHEP == |
− | # | + | # ''Install following https://gemc.jlab.org/gemc/Support/Entries/2011/1/22_Getting_and_Compiling_clhep.html into ~/jlab_software/Linux_Ubuntu10.04-i686-gcc4.4.3/clhep'' |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | == | + | == geant4 == |
− | # | + | # ''Do a manual install from sources into ~/jlab_software/Linux_Ubuntu10.04-i686-gcc4.4.3/geant4. Sources from http://geant4.web.cern.ch/geant4/support/download.shtml ; manual installation instructions at http://geant4.web.cern.ch/geant4/UserDocumentation/UsersGuides/InstallationGuide/html/ch02s03.html . The ce environment defines the needed environment variables for correct configuration; don't use ./Configure -build .'' |
− | + | ||
− | == | + | == evio == |
− | # | + | # svn checkout https://clas12svn.jlab.org/repos/trunk/clas12/evio ''and put into ~/jlab_software/Linux_Ubuntu10.04-i686-gcc4.4.3/evio; cd there.'' |
− | # ''Edit ~/jlab_software/ | + | # ./configure |
− | + | # make | |
+ | # make install | ||
+ | |||
+ | == mysql == | ||
+ | |||
+ | # sudo apt-get install mysql-client libmysqlclient-dev | ||
+ | |||
+ | == gemc == | ||
+ | |||
+ | # ''Install following https://gemc.jlab.org/gemc/Support/Entries/2011/1/19_Getting_and_Compiling_gemc.html into ~/jlab_software/Linux_Ubuntu10.04-i686-gcc4.4.3/gemc and cd there.'' | ||
+ | # ''Edit ~/jlab_software/Linux_Ubuntu10.04-i686-gcc4.4.3/gemc/SConstruct: copy the env.Library line at the end, paste, and replace env.Library with env.SharedLibrary .'' | ||
# scons | # scons | ||
− | # sudo chcon -t texrel_shlib_t ~/jlab_software/ | + | # ''Depending on your Linux installation you may need something like '' sudo chcon -t texrel_shlib_t ~/jlab_software/Linux_Ubuntu10.04-i686-gcc4.4.3/gemc/libgemc.so ''to avoid an error caused by selinux; this was not necessary for my Ubuntu 10.10 installation.'' |
− | == solgemc | + | == solgemc == |
− | # | + | # svn checkout https://jlabsvn.jlab.org/svnroot/solid/solgemc |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
# ''To test, set up mysql tunneling. In runnewbaf_solgemc.sh comment out first command and uncomment second, change -N to 10000, then run this. I get a memory allocation crash at the end but the output file is written.'' | # ''To test, set up mysql tunneling. In runnewbaf_solgemc.sh comment out first command and uncomment second, change -N to 10000, then run this. I get a memory allocation crash at the end but the output file is written.'' | ||
+ | |||
+ | (FOLLOWING COPIED FROM OLD ENTRY AND TO BE EDITED LATER) | ||
+ | |||
== banks == | == banks == |
Revision as of 14:22, 8 June 2011
by Rich Holmes
I have been working on getting the Geant4 simulation and related software up and running on a couple of non JLAB systems; here are some notes on what I did most recently. I may be omitting some steps here and I definitely have rearranged the order and left out some steps that I tried but that didn't seem to give useful results, so there are no guarantees this will work for anyone else, but it should cut down on confusion, or so I hope. This should be a better example to follow than my previous one (thanks to better understanding on my part, and probably some improvements in the solgemc package itself), but you can read about that too if you want.
The target system for now is one running Ubuntu 10.10 (32 bit i386).
Generally speaking what I tried to do was to set up a directory structure similar to what is installed using the gemc RPM; qt4 and geant4 already existed on this system but not necessarily configured as needed for gemc, so I put new installations into the new directory tree.
Contents
initial setup
- mkdir ~/jlab_software and cd there
- mkdir Linux_Ubuntu10.04-i686-gcc4.4.3
environment
- svn checkout https://phys12svn.jlab.org/repos/trunk/ce in ~/jlab_software
- Edit to set DEFAULT_JLAB_ROOT to ~/jlab_software. Also edit default software versions below that as needed.
- Depending on your Linux distribution you may need to edit ce/osreleast.pl in the obvious place to set an appropriate value for $release. For my Ubuntu 10.10 installation this was not necessary.
- source ~/jlab_software/ce/jlab.csh
scons
- Install scons using Ubuntu Software Center
- svn checkout https://clas12svn.jlab.org/repos/trunk/clas12/scons_scripts/ in ~/jlab_software
Qt4
- Download sources from http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-4.7.3.tar.gz
- Install following https://gemc.jlab.org/gemc/Support/Entries/2011/1/22_Getting_and_Compiling_qt4.html into ~/jlab_software/Linux_Ubuntu10.04-i686-gcc4.4.3/qt
ROOT
- Install ROOT as usual from source into ~/jlab_software/Linux_Ubuntu10.04-i686-gcc4.4.3/root ; use configure --enable-qt --enable-qtgsi
CLHEP
- Install following https://gemc.jlab.org/gemc/Support/Entries/2011/1/22_Getting_and_Compiling_clhep.html into ~/jlab_software/Linux_Ubuntu10.04-i686-gcc4.4.3/clhep
geant4
- Do a manual install from sources into ~/jlab_software/Linux_Ubuntu10.04-i686-gcc4.4.3/geant4. Sources from http://geant4.web.cern.ch/geant4/support/download.shtml ; manual installation instructions at http://geant4.web.cern.ch/geant4/UserDocumentation/UsersGuides/InstallationGuide/html/ch02s03.html . The ce environment defines the needed environment variables for correct configuration; don't use ./Configure -build .
evio
- svn checkout https://clas12svn.jlab.org/repos/trunk/clas12/evio and put into ~/jlab_software/Linux_Ubuntu10.04-i686-gcc4.4.3/evio; cd there.
- ./configure
- make
- make install
mysql
- sudo apt-get install mysql-client libmysqlclient-dev
gemc
- Install following https://gemc.jlab.org/gemc/Support/Entries/2011/1/19_Getting_and_Compiling_gemc.html into ~/jlab_software/Linux_Ubuntu10.04-i686-gcc4.4.3/gemc and cd there.
- Edit ~/jlab_software/Linux_Ubuntu10.04-i686-gcc4.4.3/gemc/SConstruct: copy the env.Library line at the end, paste, and replace env.Library with env.SharedLibrary .
- scons
- Depending on your Linux installation you may need something like sudo chcon -t texrel_shlib_t ~/jlab_software/Linux_Ubuntu10.04-i686-gcc4.4.3/gemc/libgemc.so to avoid an error caused by selinux; this was not necessary for my Ubuntu 10.10 installation.
solgemc
- svn checkout https://jlabsvn.jlab.org/svnroot/solid/solgemc
- To test, set up mysql tunneling. In runnewbaf_solgemc.sh comment out first command and uncomment second, change -N to 10000, then run this. I get a memory allocation crash at the end but the output file is written.
(FOLLOWING COPIED FROM OLD ENTRY AND TO BE EDITED LATER)
banks
- svn checkout http://clas12svn.jlab.org/repos/trunk/clas12/banks into ~/solgemc/
- unpack tarball sent by Seamus, copy src/example4.cc to ~/solgemc/banks/src/
- cp -rp ~/solgemc/site_scons ~/solgemc/banks
- ln -s /usr/local/root ~/jlab_software/Linux_CentOS5.6-i686-gcc4.1.2/root/5.28
- Edit ~/jlab_software/ce/root.env to replace root/lib/root with root/lib (In a standard ROOT install the libraries are in /usr/local/root/lib, not /usr/local/root/lib/root. However this turns out not to be enough, so we kludge a fix:)
- ln -s /usr/local/root/lib /usr/local/root/lib/root
- cd ~/solgemc/banks
- edit src/bank.cc to replace db.setUserName("clasuser"); with db.setUserName("soliduser"); db.setPassword("ilovesolid");
- scons
event generator
- svn co 'http://jlabsvn.jlab.org/svnroot/solid/evgen'
- follow install instructions for eicRate_20101102 but I needed to add -L /home/$(USER)/lib in definition of GLIBS in Makefile.arch).
root2lund
- follow install instructions for root2lund. Did not need any environment variable changes.