Jacob Here, Just want to add how I got AnitaTools to see FFTW:
1) echo $FFTW3_HOME to find where the lib and include dir is.
2) Next add the following line to the start of cmake/modules/FindFFTW.cmake
'set ( FFTW_ROOT full/path/you/got/from/step/1)'
Brief, experience-based instructions on installing the AnitaTools package on the Oakley OSC cluster. |
Installing AnitaTools on OSC
Sam Stafford
04/27/2017
This document summarizes the issues I encountered installing AnitaTools on the OSC Oakley cluster.
I have indicated work-arounds I made for unexpected issues
I do not know that this is the only valid process
This process was developed by trial-and-error (mostly error) and may contain superfluous steps
A person familiar with AnitaTools and cmake may be able to streamline it
Check out OSC's web site, particularly to find out about MODULES, which facilitate access to pre-installed software
export the following environment variables in your .bash_profile (not .bashrc):
ROOTSYS where you want ROOT to live
install it in somewhere your user directory; at this time, ROOT is not pre-installed on Oakley as far as I can tell
ANITA_UTIL_INSTALL_DIR where you want anitaTools to live
FFTWDIR where fftw is
look on OSC's website to find out where it is; you shouldn't have to install it locally
PATH should contain $FFTWDIR/bin and $ROOTSYS/bin
LD_LIBRARY_PATH should contain $FFTWDIR/lib $ROOTSYS/lib $ANITA_UTIL_INSTALL_DIR/lib
LD_INCLUDE_PATH should contain $FFTWDIR/include $ROOTSYS/include $ANITA_UTIL_INSTALL_DIR/include
also put in your .bash_profile: (I put these after the exports)
module load gnu/4.8.5 // loads g++ compiler
(this should automatically load module fftw/3.3.4 also)
install ROOT - follow ROOT's instructions to build from source. It's a typical (configure / make / make install) sequence
you probably need ./configure --enable-Minuit2
get AnitaTools from github/anitaNeutrino "anitaBuildTool" (see Anita ELOG 672, by Cosmin Deaconu)
Change entry in which_event_reader to ANITA3, if you want to analyze ANITA-3 data
(at least for now; I think they are developing smarts to make the SW adapt automatically to the anita data "version")
Do ./buildAnita.sh //downloads the software and attempts a full build/install
it may file on can't-find-fftw during configure:
system fails to populate environment variable FFTW_ROOT, not sure why
add the following line at beginning of anitaBuildTool/cmake/modules/FindFFTW.cmake:
set( FFTW_ROOT /usr/local/fftw3/3.3.4-gnu)
(this apparently tricks cmake into finding fftw)
NOTE: ./buildAnita.sh always downloads the software from github. IT WILL WIPE OUT ANY CHANGES YOU MADE TO AnitaTools!
Do "make"
May fail with /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.14' not found and/or a few other similar messages
or may say c11 is not supported
need to change compiler setting for cmake:
make the following change in anitaBuildTool/build/CMakeCache.txt (points cmake to the g++ compiler instead of default intel/c++)
#CMAKE_CXX_COMPILER:FILEPATH=/usr/bin/c++ (comment this out)
CMAKE_CXX_COMPILER:FILEPATH=/usr/local/gcc/4.8.5/bin/g++ (add this)
(you don't necessarfily have to use version, gcc/4.8.5, but it worked for me)
Then retry by doing "make"
Once make is completed, do "make install"
A couple of notes:
Once AnitaTools is built, if you change source, just do make, then make install (from anitaBuildTool) (don't ./buildAnita.sh; see above)
(actually make install will do the make step if source changes are detected)
To start AnitaTools over from cmake, delete the anitaBuildTool/build directory and run make (not cmake: make will drive cmake for you)
(don't do cmake directly unless you know what you're doing; it'll mess things up)
|