I am unable to propagate our cluster environment to the Rosetta scons scripts (most likely the library environment)
Here is my situation:
On our cluster, compilers are loaded using "module" (e.g. "module load compilers/gcc/4.4.2" or "module load mpi/openmpi/1.4.3_gcc").
-> Consequently, compilers (gcc, g++, ...) are not in "normal" PATH, and the same goes for some required libraries (and for INCLUDE paths also)
-> Since Scons does not automatically propagate the external environment used to execute scons to the commands used to build target files, commands paths and library paths need to be defined in one of the Rosetta .settings file.
For the compiler executables, I am able to prepend the necessary paths using either user.settings or site.settings
I am also able to propagate INCLUDE paths to scons (I see -I/mypaths in the g++ command when I execute scons)
For the libraries, I however have not succeeded. Despite adding the libraries to site.settings (see attached file), library paths do not seem to be propagated.
Here is what I typically get :
$ ./scons.py bin
scons: Reading SConscript files ...
svn: '.' is not a working copy
scons: done reading SConscript files.
scons: Building targets ...
g++ -o build/src/debug/linux/2.6/64/x86/gcc/apps/public/AbinitioRelax.o -c -std=c++98 -pipe -ffor-scope -W -Wall -pedantic -Wno-long-long -O0 -g -ggdb -ffloat-store -Isrc -Iexternal/include -Isrc/platform/linux/64/gcc -Isrc/platform/linux/64 -Isrc/platform/linux -I/software/base-gcc/include -I/software/gmp-4.3.1_gcc/include -I/software/mpfr-2.4.1_gcc/include -Iexternal/boost_1_38_0 -I/usr/local/include -I/usr/include src/apps/public/AbinitioRelax.cc
/software/gcc-4.4.2/libexec/gcc/x86_64-unknown-linux-gnu/4.4.2/cc1plus: error while loading shared libraries: libmpfr.so.1: cannot open shared object file: No such file or directory
scons: *** [build/src/debug/linux/2.6/64/x86/gcc/apps/public/AbinitioRelax.o] Error 1
scons: building terminated because of errors.
$ ls -l /software/mpfr-2.4.1_gcc/lib
-rw-r--r-- 1 root clumeq 968598 Jan 18 2010 libmpfr.a
-rwxr-xr-x 1 root clumeq 999 Jan 18 2010 libmpfr.la
lrwxrwxrwx 1 root clumeq 16 Jan 18 2010 libmpfr.so -> libmpfr.so.1.2.0
lrwxrwxrwx 1 root clumeq 16 Jan 18 2010 libmpfr.so.1 -> libmpfr.so.1.2.0
-rwxr-xr-x 1 root clumeq 458672 Jan 18 2010 libmpfr.so.1.2.0
Note that executing the above g++ command within my environment (outside of scons) works fine.
Any help with propagation of library paths to the Rosetta scons scripts would be GREAT!
using a g++ wrapper-script, I got things to compile fine. Just to be on the safe side, I also used wrapper scripts for gcc, ar, as, ld
$ cat ~/bin-wrapper/g++