pgcc segfaults when building LAM 7.1.1 with 32-bit version

I am trying to build LAM-7.1.1 on a 32-bit target Intel target using pgcc 6.1-5. I can successfully build on a 64-bit Opteron target with the same version of pgcc with no problems. Both systems are running RedHat Enterprise Linux 3, Update 4. My configure switches are:

configure --prefix=/app/lam-7.1.1 --with-tm=/usr/pbs --disable-shared --enable-static

(have to build static for PBSPro)

Additionally, the following variables are set:

CC=pgcc
CXX=pgCC
F77=pgf77
FC=pgf90

The offending file is in lam-7.1.1/otb/sys/dli_inet, called di_bootagent.c. This is the only file pgcc dies on-- if I manually compile that one file with gcc, the compilation will finish successfully, so that is my workaround for now.

pgcc -DHAVE_CONFIG_H -I. -I. -I…/…/…/share/include -I…/…/…/share/include -DLAM_BUILDING=1 -D_REENTRANT -O -c di_bootagent.c
PGC-W-0114-More than one type specified (/usr/include/unistd.h: 189)
PGC-W-0143-Useless typedef declaration (no declarators present) (/usr/include/unistd.h: 189)
pgcc-Fatal-/app/pgi/linux86/6.1/bin/newcg/pgc TERMINATED by signal 11
Arguments to /app/pgi/linux86/6.1/bin/newcg/pgc
/app/pgi/linux86/6.1/bin/newcg/pgc di_bootagent.c -opt 2 -terse 1 -inform warn -x 119 0xa10000 -x 119 0x100000 -x 122 0x40 -x 123 0x1000 -x 127 4 -x 127 16 -x 119 0x40000000 -x 19 0x400000 -x 28 0x40000 -x 59 4 -x 80 0x300 -y 80 0x1000 -x 80 0x40000000 -x 80 0x4000000 -x 119 0x8000000 -astype 0 -stdinc /app/pgi/linux86/6.1/include:/usr/local/include:/usr/lib/gcc-lib/i386-redhat-linux/3.2.3/include:/usr/lib/gcc-lib/i386-redhat-linux/3.2.3//include:/usr/include -def unix -def __unix -def unix -def linux -def __linux -def linux -def inline= -def i386 -def __i386 -def i386 -def __NO_MATH_INLINES -def linux86 -def __THROW= -predicate ‘#machine(i386) #lint(off) #system(unix) #system(posix) #cpu(i386)’ -idir . -idir . -idir …/…/…/share/include -idir …/…/…/share/include -def HAVE_CONFIG_H -def LAM_BUILDING=1 -def _REENTRANT -cmdline ‘+pgcc di_bootagent.c -DHAVE_CONFIG_H -I. -I. -I…/…/…/share/include -I…/…/…/share/include -DLAM_BUILDING=1 -D_REENTRANT -O -c’ -asm /tmp/pgccnRBeNOjuGsmg.s

Hi sjlarrondo,

Thank you for your report. I was able to reproduce this error here and have verifiied that it has been fixed in the 6.2 compilers. Note that it only occurs with “-O” (aka “-O2”), so either setting the optimization to “-fast” or “-O1” also works around the problem.

  • Mat

Hi Mat,

I will use your workaround until I am able to upgrade the compiler. Thanks again for your quick response.

Sergio