HP MLIB User's Guide Vol. 2 7th Ed.
732 HP MLIB LAPACK User’s Guide
Accessing Distributed SuperLU
−Wl,–Bstatic,−L/opt/mlib/lib/pgi_5.1/hpmpi_2.1/lib/64
For example, the command lines in Method 2 for XC4000 could be written:
mpif90 [options] file...−Wl,–Bstatic,−L/opt/mlib/lib/pgi_5.1/hpmpi_2.1/lib/64
−lsuperlu_dist −mp
mpicc
[options] file ...−Wl,–Bstatic,−L/opt/mlib/lib/pgi_5.1/hpmpi_2.1/lib/64
−lsuperlu_dist −mp
−lpgf90 −lpgf90_rpml −lpgf902 −lpgf90rtl −lpgftnrtl
4. Set the LDOPTS environment variable to include:
–Bstatic,−L/opt/mlib/lib/pgi_5.1/hpmpi_2.1/lib/64
For example:
setenv LDOPTS “–Bstatic,–L/opt/mlib/lib/pgi5.1/hpmpi_2.1/lib/64”
Then use the −lsuperlu_dist option on the compiler command line that links
your program:
mpif90 [options] file ... −lsuperlu_dist −mp
mpicc
[options] file ... −lsuperlu_dist −mp −lpgf90 −lpgf90_rpml −lpgf902
−lpgf90rtl −lpgftnrtl
NOTE An LDOPTS specification takes precedence over using -Wl on the
compiler command line. That is, if you use the LDOPTS environment
variable to specify a library path, you cannot override that specification
with a -Wl option on your compiler command line.
Problem with +ppu compatibility and duplicated symbols
All MLIB subprograms documented in the HP MLIB User’s Guide have two
entry points: one is compatible with the Fortran compiler option +noppu (no
postpend underbar) and the second is compatible with the Fortran compiler
option +ppu (postpend underbar). For example, the MLIB BLAS error handler
XERBLA has entry points xerbla and xerbla_. Table 11-2 shows the Fortran 90
compiler defaults.
Table 11-2 Compiler Defaults
Different compiler defaults can cause duplicate symbol definitions at link time
as the following examples illustrate.
32-bit Addressing 64-bit Addressing
PA-RISC +noppu +ppu
Itanium +ppu +ppu