I am using LAM-7.1 on Centos-3.3.x86_64 with Myrinet and the PGI compilers.
Lam builds fine, but I am having a linking problem with mpicc:
$ mpicc --show mpi-hello.c
/usr/pgi/linux86-64/5.2/bin/pgcc -D_REENTRANT mpi-hello.c -lpthread --rpath /usr/local/lib -L/usr/lib64 -lmpi -llam -lutil -lpthread -lgm -lpthread -ldl
$ mpicc mpi-hello.c
pgcc-Warning-Unknown switch: --rpath
mpi-hello.c:
PGC-W-0095-Type cast required for this conversion (mpi-hello.c: 42)
PGC-W-0095-Type cast required for this conversion (mpi-hello.c: 45)
PGC-W-0095-Type cast required for this conversion (mpi-hello.c: 48)
PGC/x86-64 Linux/x86-64 5.2-4: compilation completed with warnings
File with unknown suffix passed to linker: /usr/local/lib
/usr/local/lib: file not recognized: Is a directory
PGI doesn't seem to deal with --rpath without the -Wl, prefix, but with it it
works:
# /usr/pgi/linux86-64/5.2/bin/pgcc -D_REENTRANT mpi-hello.c -lpthread -Wl,--rpath,/usr/local/lib -L/usr/lib64 -lmpi -llam -lutil -lpthread -lgm
-lpthread -ldl
PGC-W-0095-Type cast required for this conversion (mpi-hello.c: 42)
PGC-W-0095-Type cast required for this conversion (mpi-hello.c: 45)
PGC-W-0095-Type cast required for this conversion (mpi-hello.c: 48)
PGC/x86-64 Linux/x86-64 5.2-4: compilation completed with warnings
$ ldd ./a.out
libpthread.so.0 => /lib64/tls/libpthread.so.0 (0x0000002a9566c000)
libutil.so.1 => /lib64/libutil.so.1 (0x0000002a95781000)
libgm.so.0 => /usr/local/lib/libgm.so.0 (0x0000002a95884000)
libdl.so.2 => /lib64/libdl.so.2 (0x0000002a959a0000)
libc.so.6 => /lib64/tls/libc.so.6 (0x0000002a95aa4000)
libm.so.6 => /lib64/tls/libm.so.6 (0x0000002a95ce8000)
/lib64/ld-linux-x86-64.so.2 => /lib64/ld-linux-x86-64.so.2 (0x0000002a95556000)
(notice /usr/local/lib was included :)
I will need mpicc to work on this cluster properly. Are there any work arounds
or patches that I can try?
Thanks!
--
Greg Kurtzer
Berkeley Lab, Linux guy
|