Open MPI logo

Open MPI User's Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Open MPI User's mailing list

From: Brian Granger (bgranger_at_[hidden])
Date: 2006-01-31 18:47:27


Hello all,

I am compiling a C++ program that uses the Open-MPI c++ bindings. I
think there is a bug in the constants.h and/or mpicxx.cc files.

The file constants.h defines lots of constants as extern. There are
lots of things like:

OMPI_DECLSPEC extern const int ERR_COUNT;

Because of the extern keyword, it is assumed that ERR_COUNT will be
found at runtime. But when I run, I find that some of the symbols
defined as extern in constants.h don't exist!

It looks like the problem is that the constants are never defined in
mpicxx.cc. I found problems with the following constants:

not defined in mpicxx.cc:

ERR_COUNT
SIGNED_CHAR

only defined in mpicxx.cc if one-sided support is enabled:

WIN_NULL

By commenting corresponding lines out in constants.h, my code
compiled and ran fine. Is this a bug, or should these things be
defined somewhere else. Thanks!

Brian Granger