Dear OpenMPI pros

When I try to build OpenMPI 1.4.4 with PGI compilers 11.7 [pgcc, pgcc, 
pgfortran]
I get the awkward error message on the bottom of this email.

I say awkward because I assigned the value 'shanghai-64' to the '-tp' flag,
as you can see from the successful 'libtool:compile' command in the error 
message.
However, the subsequent 'libtool:link' command has '-tp' without a value.
Note that the remaining flags '-fast -Mfprelaxed' were also dropped in the 
libtool:link command. 
The 'partial' flag '-tp' is worse than no flag at all, and the pgcc compiler 
fails.

By contrast, OpenMPI 1.4.3 builds just fine with  the same compilers and 
the same compiler flags.

Is this the revival of an old idiosyncrasy between libtool and PGI?
Could perhaps the OMPI 1.4.4. configure script have stripped off my compiler 
flags after '-tp',
when passing it to libtool in link mode? [Somehow it works in 1.4.3.]
Is there any workaround or patch?


Many thanks,
Gus Correa

******

More details:
CentOS Linux 5.2 x86_64, libtool 1.5.22, PGI 11.7.

Configure parameters:
export CC=pgcc
export CXX=pgcpp
export F77='pgfortran'
export FC=${F77}

export CFLAGS='-tp shanghai-64 -fast -Mfprelaxed'
export CXXFLAGS=${CFLAGS}
export FFLAGS=${CFLAGS}
export FCFLAGS=${FFLAGS}

../configure \
--prefix=${MYINSTALLDIR} \
--with-libnuma=/usr \
--with-tm=/opt/torque/2.4.11/gnu-4.1.2 \
--with-openib=/usr \
--enable-static \
2>&1 | tee configure_${build_id}.log

****

#################### ERROR MESSAGE ###########################

libtool: compile:  pgcc -DHAVE_CONFIG_H -I. 
-I../../../../../opal/mca/memory/ptmalloc2 -I../../../../opal/include 
-I../../../../orte/include -I../../../../ompi/include 
-I../../../../opal/mca/paffinity/linux/plpa/src/libplpa -DMALLOC_DEBUG=0 
-D_GNU_SOURCE=1 -DUSE_TSD_DATA_HACK=1 -DMALLOC_HOOKS=1 
-I../../../../../opal/mca/memory/ptmalloc2/sysdeps/pthread 
-I../../../../../opal/mca/memory/ptmalloc2/sysdeps/generic -I../../../../.. 
-I../../../.. -I../../../../../opal/include -I../../../../../orte/include 
-I../../../../../ompi/include -D_REENTRANT -DNDEBUG -tp shanghai-64 -fast 
-Mfprelaxed -c ../../../../../opal/mca/memory/ptmalloc2/dummy.c -o dummy.o 
>/dev/null 2>&1
/bin/sh ../../../../libtool --tag=CC   --mode=link pgcc  -DNDEBUG -tp 
shanghai-64 -fast -Mfprelaxed   -export-dynamic   -o libopenmpi_malloc.la 
-rpath /home/sw/openmpi/1.4.4/pgi-11.7/lib dummy.lo  -lnsl -lutil  
libtool: link: pgcc -shared  -fpic -DPIC  .libs/dummy.o   -lnsl -lutil -lc  -tp 
  -Wl,-soname -Wl,libopenmpi_malloc.so.0 -o .libs/libopenmpi_malloc.so.0.0.0
pgcc-Fatal-Switch -tp must have a value
-tp=amd64|amd64e|athlon|athlonxp|barcelona|barcelona-32|barcelona-64|core2|core2-32|core2-64|istanbul|istanbul-32|istanbul-64|k7|k8|k8-32|k8-64|k8-64e|nehalem|nehalem-32|nehalem-64|p5|p6|p7|p7-32|p7-64|penryn|penryn-32|penryn-64|piii|piv|px|px-32|px-64|sandybridge|sandybridge-32|sandybridge-64|shanghai|shanghai-32|shanghai-64|x64
                    Choose target processor type
    amd64           Same as -tp k8-64
    amd64e          Same as -tp k8-64e
    athlon          AMD 32-bit Athlon Processor
    athlonxp        AMD 32-bit Athlon XP Processor
    barcelona       AMD Barcelona processor
    barcelona-32    AMD Barcelona processor, 32-bit mode
    barcelona-64    AMD Barcelona processor, 64-bit mode
    core2           Intel Core-2 Architecture
    core2-32        Intel Core-2 Architecture, 32-bit mode
    core2-64        Intel Core-2 Architecture, 64-bit mode
    istanbul        AMD Istanbul processor
    istanbul-32     AMD Istanbul processor, 32-bit mode
    istanbul-64     AMD Istanbul processor, 64-bit mode
    k7              AMD Athlon Processor
    k8              AMD64 Processor
    k8-32           AMD64 Processor 32-bit mode
    k8-64           AMD64 Processor 64-bit mode
    k8-64e          AMD64 Processor rev E or later, 64-bit mode
    nehalem         Intel Nehalem processor
    nehalem-32      Intel Nehalem processor, 32-bit mode
    nehalem-64      Intel Nehalem processor, 64-bit mode
    p5              Intel P5 Pentium Architecture
    p6              Intel P6 Architecture (Pentium Pro, II, III)
    p7              Intel P7 Architecture (Pentium 4, Xeon, Centrino)
    p7-32           Intel P7 Architecture (Pentium 4, Xeon, Centrino)
    p7-64           Intel P7 Architecture with EM64T, 64-bit mode
    penryn          Intel Penryn Architecture
    penryn-32       Intel Penryn Architecture, 32-bit mode
    penryn-64       Intel Penryn Architecture, 64-bit mode
    piii            Intel Pentium III
    piv             Intel Pentium 4
    px              Generic x86 Processor
    px-32           Generic x86 Processor, 32-bit mode
    px-64           Generic x86-64 architecture
    sandybridge     Intel SandyBridge processor
    sandybridge-32  Intel SandyBridge processor, 32-bit mode
    sandybridge-64  Intel SandyBridge processor, 64-bit mode
    shanghai        AMD Shanghai processor
    shanghai-32     AMD Shanghai processor, 32-bit mode
    shanghai-64     AMD Shanghai processor, 64-bit mode
    x64             Unified AMD/Intel 64-bit mode
make[2]: *** [libopenmpi_malloc.la] Error 2
make[2]: Leaving directory 
`/home/swinst/openmpi/1.4.4/openmpi-1.4.4/build_pgi-11.7/opal/mca/memory/ptmalloc2'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory 
`/home/swinst/openmpi/1.4.4/openmpi-1.4.4/build_pgi-11.7/opal'
make: *** [all-recursive] Error 1


Reply via email to