[mvapich-discuss] Building MVAPICH2 1.8a2/1.7 difficulties with PGI 12.2

Thompson, Matt (GSFC-610.1)[SCIENCE SYSTEMS AND APPLICATIONS INC] matthew.thompson at nasa.gov
Fri Feb 24 09:09:27 EST 2012


I have been having difficulty building MVAPICH2 1.8a2 (and, indeed
MVAPICH2 1.7) with PGI 12.2, while I can build with PGI 11.10 (and
others can with 12.1). When you build with:

env CC=pgcc CXX=pgCC FC=pgfortran F77=pgfortran ./configure
--prefix=/home/user/mvapich2-18a2-nemesis --with-device=ch3:nemesis | &
tee configure.log

The make fails with:

 make[5]: Entering directory
`/home/user/src/mvapich2-1.8a2/src/pm/hydra/tools/topo/hwloc/hwloc/src'
   CC     topology.lo
   CC     traversal.lo
   CC     distances.lo
 PGC-S-0039-Use of undeclared variable __FLT_MAX__ (distances.c: 325)
 PGC-S-0039-Use of undeclared variable __FLT_MIN__ (distances.c: 325)
 PGC/x86-64 Linux 12.2-0: compilation completed with severe errors

I have been able to determine that this is due to a new ifndef in
float.h with PGI 12.2:

(214) > diff /opt/pgi/linux86-64/11.10/include/float.h
/opt/pgi/linux86-64/12.2/include/float.h
15a16
> #if !defined(_GNU_SOURCE)
50a52
> #endif

which surrounds the code containing these macros. I've inquired with PGI
as to why this ifndef is now included with 12.2.

But, in the meantime, I did try to configure adding
CPPFLAGS=-D_GNU_SOURCE but that didn't help as the make still failed as
above. hwloc does have its own complex system of ifdefs and ifndefs,
perhaps that might be clearing this out? Plus, there might be bad
effects to setting _GNU_SOURCE by fiat on the rest of MVAPICH2!

Can anyone here think of a workaround (aside from editing PGI's float.h)
that would allow this build to proceed for now?

Thanks,
Matt Thompson

-- 
Matt Thompson, PhD     SSAI, Sr Software Test Engr
NASA GSFC, Global Modeling and Assimilation Office
Code 610.1, 8800 Greenbelt Rd, Greenbelt, MD 20771
Phone: 301-614-6712              Fax: 301-614-6246


More information about the mvapich-discuss mailing list