undefined reference to `va_copy'

Hello,
I’m trying to build mvapich-1.0 on Redhat AS 4.0 Update 6 (i686) with PGI 7.0.7 compiler.
The compilation fails on:

pgcc -DVAPI -fPIC -D_SMP_ -DUSE_SSH mpirun_rsh.c pmgr_collective_common.o
pmgr_collective_mpirun.o minidaemon.o mpirun_util.o -lm -o mpirun_rsh
mpirun_rsh.c:

mpirun_util.o(.text+0x36): In function vedit_str': : undefined reference to va_copy’
mpirun_util.o(.text+0xcc): In function vedit_str': : undefined reference to va_copy’

va_copy - should be macro in stdarg.h file. PGI compiler use own stdarg.h file and it doesn’t have the macro definition.
So I guess it is some compiler issue ?

Thanks for help.

Hi Pasha,

Could it be a configuration issue? Make sure you remove previous configuration and then reconfigure with pgcc/pgf77/pgf90/pgcpp. I would use the latest MVAPICH and also latest PGI compilers if possible.

Hongyon

Hi,

Did you run configure using make.mvapich.XXX file?

Hongyon

Hi,
I installed it as part of OFED and also I installed it manually with my own scripts (I’m mvapich maintainer in OFED distribution) . All the installation process done on clean code base.

More info:
With the same Redhat AS 4 UP6 and the same pgi version 7.0.7 BUT on
x86_64 platform the same code compiles without any problem and on i686 it fails (other machine with the same install)

In $PGI/linux86_64//include/stdarg.h we have va_copy macro defined.
And in $PGI/linux86/
/include/stdarg.h the macro is missed ! So I guess it is root cause of the failure, is not it ?

Thanks,
Pasha

Hi,

Please use 7.1-1 or later release. We have fixed that.

Thanks for reporting.
Hongyon

Thanks for help.