SEARCH
TOOLBOX
LANGUAGES
Forum Menu

Library problem on OpenSUSE 12.1

From NWChem

You are viewing a single post from the thread title above
Jump to: navigation, search

Click here for full thread
Clicked A Few Times
Threads 1
Posts 39
Rafael,

A simple ldd command will not find libgfortran.so.1 because $LD_LIBRARY_PATH is not set. You should see a lib directory that is parallel to the 3rdparty/nwchem/bin directory in the directory structure (i.e. 3rdparty/nwchem/lib). If you don't have that directory then you have the original ECCE 6.3 distribution. If you do have the directory then you have the proper updated ECCE 6.3 distribution. In that lib directory you will see just the libgfortran.so.1.

The trick is that our ECCE job submit script sets $LD_LIBRARY_PATH so that it can find the shared library. Having to use $LD_LIBRARY_PATH is pretty ugly in this day and age. But since I didn't want to start changing how NWChem is built, I just took the path of least resistance.

ECCE happens to use the -rpath directive when linking executables as a better alternative. That's how ECCE apps find the ECCE shared libs without having to set $LD_LIBRARY_PATH (and having potential side effects of non-ECCE applications picking up the wrong shared libraries for them). We use relative paths with -rpath and that makes ECCE easily relocatable when installed. All ECCE apps are started from the bin directory where they are installed. That means the path to shared libs is "../lib" for the ECCE shared libs and for the third party software it is more like ../3rdparty/wxwidgets/lib, ../3rdparty/xerces/lib, and ../3rdparty/system/lib, etc.

Anyway, if you ignore your ldd output and just try to run an NWChem job launched from ECCE, you'll be OK. If you want to use the ECCE built NWChem executable outside of ECCE then my suggestion is to run a single job from ECCE and take a look at the submit__* script that ECCE creates in the calculation run directory (you can create an xterm in that directory from the Organizer Run Mgmt menu) for an example of how to run it.

I'm sure there is a build directive for NWChem to create a statically linked executable to avoid these subtleties. In fact I remember with the NWChem 6.0 binary distributions that the NWChem team created they had static exectuables. That makes a lot of sense with a single monolithic application like NWChem, but not for ECCE as a suite of applications that share so much underlying code in libraries.

Regards,
Gary


Who's here now Members 0 Guests 0 Bots/Crawler 0


AWC's: 2.5.10 MediaWiki - Stand Alone Forum Extension
Forum theme style by: AWC