Difference between revisions of "Solgemc installation outside JLAB"

From Hall A Wiki
Jump to: navigation, search
(Rewrite following more straightforward second installation)
(Link to new wiki)
 
(9 intermediate revisions by one other user not shown)
Line 1: Line 1:
 +
This page has been moved to [https://solid.jlab.org/wiki/index.php/Solgemc_installation_outside_JLAB https://solid.jlab.org/wiki/index.php/Solgemc_installation_outside_JLAB] in the new [https://solid.jlab.org/wiki SoLID Wiki].  Please do not edit this page.
 +
 
by Rich Holmes
 
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 [[Earlier solgemc installation outside JLAB|read about that too]] if you want.
+
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. This is a much better example to follow than my previous ones, but you can [[Earlier solgemc installation outside JLAB|read about those too]] if you want.
  
The target system for now is one running Ubuntu 10.10 (32 bit i386).
+
The target system is one running CentOS 6.3 (64 bit). Earlier I installed under Ubuntu 10.10 (32 bit i386) similarly.
  
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.
+
I followed the procedure [https://gemc.jlab.org/gemc/Support/Entries/2011/8/1_Step_by_Step.html here] to install gemc.
  
== initial setup ==
+
After that:
# mkdir ~/jlab_software ''and cd there''
+
# mkdir Linux_Ubuntu10.04-i686-gcc4.4.3
+
  
== environment ==
+
# cd $JLAB_SOFTWARE/evio
# svn checkout https://phys12svn.jlab.org/repos/trunk/ce ''in ~/jlab_software''
+
# ''Edit $JLAB_SOFTWARE/evio/SConstruct: add the following lines after ''env.Append(LIBPATH = ['lib']):<blockquote><br />env.Append(LINKFLAGS = '-fPIC')<br />env.Append(CPPFLAGS = '-fPIC')<br />env.Append(CXXFLAGS = '-fPIC')<br />env.Append(CCFLAGS = '-fPIC')</blockquote>
# ''Edit to set DEFAULT_JLAB_ROOT to ~/jlab_software. Also edit default software versions below that as needed.''
+
# scons -c; scons
# ''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.''
+
# cd $JLAB_SOFTWARE/gemc
# source ~/jlab_software/ce/jlab.csh
+
# ''Edit $JLAB_SOFTWARE/gemc/SConstruct: copy the env.Library line at the end, paste, and replace env.Library with env.SharedLibrary; also add the following lines after ''env.Append(LIBPATH = ['lib']):<blockquote><br />env.Append(LINKFLAGS = '-fPIC')<br />env.Append(CPPFLAGS = '-fPIC')<br />env.Append(CXXFLAGS = '-fPIC')<br />env.Append(CCFLAGS = '-fPIC')</blockquote>
 +
# scons -c; scons
  
== scons ==
+
(The '-fPIC' edits were not needed for Ubuntu 10.10.)
 
+
# ''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 ==
 
== solgemc ==
  
# svn checkout https://jlabsvn.jlab.org/svnroot/solid/solgemc
+
# svn checkout https://jlabsvn.jlab.org/svnroot/solid/solgemc ''into $JLAB_SOFTWARE/solgemc and cd there''
# ''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
 
# scons
 +
# ''In your ~/.cshrc add $JLAB_SOFTWARE/gemc to LD_LIBRARY_PATH environment variable''
  
== event generator ==
+
For additional packages, e.g. banks, cteq, event generator, root2lund see [[Earlier solgemc installation outside JLAB|Second Installation here]].
 
+
# 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.''
+

Latest revision as of 15:40, 7 December 2020

This page has been moved to https://solid.jlab.org/wiki/index.php/Solgemc_installation_outside_JLAB in the new SoLID Wiki. Please do not edit this page.

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. This is a much better example to follow than my previous ones, but you can read about those too if you want.

The target system is one running CentOS 6.3 (64 bit). Earlier I installed under Ubuntu 10.10 (32 bit i386) similarly.

I followed the procedure here to install gemc.

After that:

  1. cd $JLAB_SOFTWARE/evio
  2. Edit $JLAB_SOFTWARE/evio/SConstruct: add the following lines after env.Append(LIBPATH = ['lib']):

    env.Append(LINKFLAGS = '-fPIC')
    env.Append(CPPFLAGS = '-fPIC')
    env.Append(CXXFLAGS = '-fPIC')
    env.Append(CCFLAGS = '-fPIC')
  3. scons -c; scons
  4. cd $JLAB_SOFTWARE/gemc
  5. Edit $JLAB_SOFTWARE/gemc/SConstruct: copy the env.Library line at the end, paste, and replace env.Library with env.SharedLibrary; also add the following lines after env.Append(LIBPATH = ['lib']):

    env.Append(LINKFLAGS = '-fPIC')
    env.Append(CPPFLAGS = '-fPIC')
    env.Append(CXXFLAGS = '-fPIC')
    env.Append(CCFLAGS = '-fPIC')
  6. scons -c; scons

(The '-fPIC' edits were not needed for Ubuntu 10.10.)

solgemc

  1. svn checkout https://jlabsvn.jlab.org/svnroot/solid/solgemc into $JLAB_SOFTWARE/solgemc and cd there
  2. scons
  3. In your ~/.cshrc add $JLAB_SOFTWARE/gemc to LD_LIBRARY_PATH environment variable

For additional packages, e.g. banks, cteq, event generator, root2lund see Second Installation here.