SCons is unable to find a shared library (libcloog-isl.so.4).
The build fails immediately with the following error:
/share/apps/NYUAD3/gcc/gcc/4.9.3/el7/libexec/gcc/x86_64-unknown-linux-gnu/4.9.3/cc1plus: error while loading shared libraries: libcloog-isl.so.4: cannot open shared object file: No such file or directory
I confirm that libcloog-isl.so.4 does exist:
$ which libcloog-isl.so.4
/share/apps/NYUAD3/gcc/cloog/0.18.4/el7/lib/libcloog-isl.so.4
building with the log=environment option shows that /share/apps/NYUAD3/gcc/cloog/0.18.4/el7/lib is the first thing listed in the LIBPATH variable:
external/scons-local/scons.py log=environment bin mode=release extras=mpi -j1
- LIBPATH = ['/share/apps/NYUAD3/gcc/cloog/0.18.4/el7/lib', '/share/apps/NYUAD/openmpi/gcc_4.9.3/1.10.2/lib',
How is it that SCons cannot find this library?
libcloog-isl.so.4 is not familiar to me as being part of a Rosetta compile. The error message and google are suggestive that it is needed by the compiler, not by Rosetta or scons. This suggests the compiler is misconfigured, or the scons environment is weird in a way such that the compiler cannot see its own dependencies.
A) do some tests to see that the compiler works at all (by compiling something else - just a hello world from the internet is probably ok.
B) the standard advice for making scons look harder for dependencies / have a broader environment applies. Copy tools/build/killdevil.site.settings or topsail.site.settings into a file site.settings in the same directory, (assuming you do not already have one). The explanation for this and further details are in many other forum posts here.
It occurred to me that the environment is somehow not being passed to the compiler. I was able to get it to build by using these settings in user.settings:
"overrides" : {
## Uncomment the following line to import the full operating system environment. Useful f$
## compiling with scons on different systems.
"ENV" : os.environ,
"cc" : "gcc",
"cxx" : "g++",
},
It builds now but fails toward the end with:
scons: building terminated because of errors.
However, no errors are listed.
Compile it again - if you are running scons at many -j the error may have gotten buried. It will error out in the same place again. (and presumably it won't try to recompile all the stuff that already succeeded, since that's the point of scons)
The errors seem to be related to sqlite3.
I'm at a loss as to how to fix this.
in case it matters:
Answered in another post: https://www.rosettacommons.org/node/10443