Difference between revisions of "Solgemc installation outside JLAB"
From Hall A Wiki
(put qt4 tool in correct place in sequence) |
(put qt4 tool in correct place in sequence) |
||
Line 31: | Line 31: | ||
# svn checkout https://jlabsvn.jlab.org/svnroot/solid/solgemc ''See below for continuation of solgemc installation'' | # svn checkout https://jlabsvn.jlab.org/svnroot/solid/solgemc ''See below for continuation of solgemc installation'' | ||
+ | # ''from launchpad.net/scons-qt4, download, put in ~/solgemc/site_scons/site_tools/qt4'' | ||
== gemc continued == | == gemc continued == | ||
Line 52: | Line 53: | ||
## ''Change'' setenv EVIO $JLAB_ROOT_ARCH/evio | ## ''Change'' setenv EVIO $JLAB_ROOT_ARCH/evio | ||
## ''Change'' set PYTHONADD=~/scons_scripts | ## ''Change'' set PYTHONADD=~/scons_scripts | ||
− | |||
# ''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.'' | ||
Revision as of 15:05, 16 May 2011
by Rich Holmes
I have been working on getting the Geant4 simulation and related software up and running on a non JLAB system; here are some notes on what I needed to do. 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.
The target system for now is one running CentOS 5.6 (32 bit i386), newly installed. Install developer packages, of course.
Contents
scons
- go to http://rpm.pbone.net and search for scons. I find a link for RH EL5 i386 version 1.2.0. This is an older version but it's what's on ifarml6. Install with rpm.
Qt4
- sudo rpm -ivh http://software.freivald.com/centos/software.freivald.com-1.0.0-1.noarch.rpm
- sudo yum update fontconfig fontconfig-devel qt4 qt4-devel (Not sure all those are required)
ROOT
- Install ROOT as usual from source; use configure --enable-qt --enable-qtgsi
gemc
- sudo rpm -ivh http://www.jlab.org/12gev_phys/RPMS/noarch/jlab-phys-1.3-1.noarch.rpm
- sudo yum install gemc-jlab
- Note that it appears one must work in (t)csh to run gemc. Irritating — I prefer bash — but that's life. To facilitate modifications, copy to user directory and work with that: cp -rp /usr/local/jlab_software ~/
- svn checkout https://clas12svn.jlab.org/repos/trunk/clas12/scons_scripts/
- setenv JLAB_ROOT ~/jlab_software
- Edit ~/jlab_software/ce/osrelease.pl. Add a test for CentOS 5.6 in the obvious place.
- sudo ln -s ~/jlab_software/Linux_RHEL5-i686-gcc4.1.2 ~/jlab_software/Linux_CentOS5.6-i686-gcc4.1.2 See below for continuation of gemc installation
solgemc
- svn checkout https://jlabsvn.jlab.org/svnroot/solid/solgemc See below for continuation of solgemc installation
- from launchpad.net/scons-qt4, download, put in ~/solgemc/site_scons/site_tools/qt4
gemc continued
- cp -rp ~/solgemc/site_scons ~/jlab_software/Linux_CentOS5.6-i686-gcc4.1.2/gemc
- Edit ~/jlab_software/Linux_CentOS5.6-i686-gcc4.1.2/gemc/SConstruct: copy the env.Library line at the end, paste, and replace env.Library with env.SharedLibrary
- cd ~/jlab_software/Linux_CentOS5.6-i686-gcc4.1.2/gemc
- scons
- sudo chcon -t texrel_shlib_t ~/jlab_software/Linux_CentOS5.6-i686-gcc4.1.2/gemc/libgemc.so to avoid an error caused by selinux
solgemc continued
- Edit ~/solgemc/solgemc_env.csh:
- Comment out set UNAME... and following test for 64 bit
- Add unsetenv JLAB_ROOT and unsetenv JLAB_ROOT_ARCH
- Add setenv JLAB_ROOT ~/jlab_software/ and setenv JLAB_ROOT_ARCH $JLAB_ROOT/Linux_CentOS5.6-i686-gcc4.1.2/
- Add or change setenv GEMC $JLAB_ROOT_ARCH/gemc and setenv GEMC_EVIO2ROOT $JLAB_ROOT_ARCH/bin and setenv GEMC_HOST 127.0.0.1 and setenv GEMC_USER soliduser
- Change setenv G4INSTALL $JLAB_ROOT_ARCH/geant4/4.9.3.p02
- Comment out source $G4INSTALL/env.csh and add source $JLAB_ROOT/ce/jlab.csh
- Change setenv QTDIR /usr/lib/qt4
- Change setenv EVIO $JLAB_ROOT_ARCH/evio
- Change set PYTHONADD=~/scons_scripts
- 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.
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.