-
Notifications
You must be signed in to change notification settings - Fork 911
Closed
Description
Since PR #261 was committed, the nightly master tar file won't build if configured with --enable-mpi-cxx. I'm seeing this failure with both g++ 4.9.1 on Debian x86_64 and g++ 4.4.7 on an old RedHat x86_64. Simplest reproducer is:
./configure --enable-mpi-cxx && make all
The build fails like this:
Making all in mpi/cxx
make[2]: Entering directory 'ompi-master-nightly/openmpi-dev-274-g2177f9e/ompi/mpi/cxx'
CXX mpicxx.lo
In file included from ../../../ompi/mca/rte/orte/rte_orte.h:33:0,
from ../../../ompi/mca/rte/rte.h:195,
from ../../../ompi/errhandler/errhandler.h:34,
from mpicxx.cc:37:
../../../orte/mca/routed/routed.h:52:8: error: using typedef-name 'orte_process_name_t' after 'struct'
struct orte_process_name_t;
^
In file included from ../../../ompi/mca/rte/orte/rte_orte.h:29:0,
from ../../../ompi/mca/rte/rte.h:195,
from ../../../ompi/errhandler/errhandler.h:34,
from mpicxx.cc:37:
../../../orte/include/orte/types.h:102:29: note: 'orte_process_name_t' has a previous declaration here
typedef opal_process_name_t orte_process_name_t;
^
Makefile:1737: recipe for target 'mpicxx.lo' failed
make[2]: *** [mpicxx.lo] Error 1
make[2]: Leaving directory 'ompi-master-nightly/openmpi-dev-274-g2177f9e/ompi/mpi/cxx'
Looks like the struct orte_process_name_t;
forward declaration in routed/routed.h is causing a type-name conflict with the struct-less typedef opal_process_name_t orte_process_name_t;
in orte/types.h.