Subject: Including hdf5.h disables MPI C++ bindings Package: libhdf5-openmpi-dev Version: 1.8.9-1~exp3 Severity: normal
As reported in lp:1165504 [1] and discussed in bug 686926 [2], including "hdf5.h" from the libhdf5-openmpi-dev package completely disables the MPI C++ bindings. This leads to weird errors and regressions. For example, to reproduce: $ cat test.cpp #include <hdf5.h> // disables MPI C++ bindings #include <mpi.h> int main() { MPI::Init(); printf("I'm %d of %d\n", MPI::COMM_WORLD.Get_rank(), MPI::COMM_WORLD.Get_size()); MPI::Finalize(); } $ mpicxx -o test test.cpp test.cpp: In function ‘int main()’: test.cpp:4:3: error: ‘MPI’ has not been declared test.cpp:5:28: error: ‘MPI’ has not been declared test.cpp:5:56: error: ‘MPI’ has not been declared test.cpp:6:3: error: ‘MPI’ has not been declared The fix for this bug is to remove 'skip_cxx_inclusion.diff' from debian/patches/series. The main rationale for the patch was to alleviate awkward workarounds when compilng C++ code: mkoctfile -DMPICH_SKIP_MPICXX=1 -DOMPI_SKIP_MPICXX=1 helloworld.cc However, the appropriate fix would instead have been to compile helloworld as: CXX=mpicxx mkoctfile helloworld.cc The mpicxx wrappers are provided for a reason, and we should strive to encourage our users to actually _use_ them. I hope you consider reverting the 'skip_cxx_inclusion.diff' from debian/patches/series. Thanks, Brad [1]: https://bugs.launchpad.net/ubuntu/+source/hdf5/+bug/1165504 [2]: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=686926 -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org