usr/bin/ld: ./…/…/…/…/share/liblam/.libs/liblam.so: No such file: No
such file or directory
I am getting the error above followed by man errors when trying to rebuild lam with PGI.
Was hoping someone could shed some insight into this.
I executed “find / -mount -name 'liblam.so” and none could be found for
pgi:
/usr/x86_64-intel-8.1/lam-gm-7.1.1/lib/liblam.so
/usr/x86_64-intel-8.1/lam-7.1.1/lib/liblam.so
/usr/x86_64-gcc-3.3.3/lam-7.1.1/lib/liblam.so
/usr/x86_64-gcc-3.3.3/lam-gm-7.1.1/lib/liblam.so
/usr/x86_64-intel-9.0/lam-gm-7.1.1/lib/liblam.so
/usr/x86_64-intel-9.0/lam-7.1.1/lib/liblam.so
/usr/x86_64-pathscale-2.2.1/lam-gm-7.1.1/lib/liblam.so
/usr/x86_64-pathscale-2.2.1/lam-7.1.1/lib/liblam.so
The above files are those that are installed by the lam and lam-gm
binary rpms build with our compiler set.
Any help would be appreciated.
Joshua McDowell
Linux Networx Feild Service Eng.
Hi Joshua,
You need LAM/MPI versions 7.1.2 and if you wish the C++ shared libraries, PGI version 6.0 or later. LAM/MPI 7.1.2 contains an updated libtool (1.5.14) which supports PGI and PGI 6.0 changed how C++ templates we’re instantiated allowing them to be included in the libtool model for hsared objects.
To build the LAM/MPI shared libaries first set your environment, run configure with “–enable-shared”, and type ‘make’.
For example using csh:
setenv CC pgcc
setenv FC pgf90
setenv CXX pgCC
setenv CFLAGS "-fast"
setenv FFLAGS "-fast"
setenv CXXFLAGS "-fast"
configure --enable-shared --prefix=/path/to/install/dir
.. lots of output ...
make
The above files are those that are installed by the lam and lam-gm
binary rpms build with our compiler set.
Is this RPM from Linux Networx? If so, I’ll ask our contacts to investigate getting PGI included with your default install.
As a note, recent versions of autoconf (which it likely is) prefers to receive those variables in the configure command as it can be rechecked later.
i.e.
configure CC=pgcc CXX=pgCC FC=pgf90 CFLAGS=“-fast” CXXFLAGS=“-fast” FFLAGS=“-fast”–enable-shared --prefix=/path/to/install/dir