On Jan 26, 2010, at 6:49 AM, Jed Brown wrote:
> And inspecting a binary built in Sep 2008 (must have been 1.2.7), ldd
> resolves to my 1.4.1 copy without complaints. However, the loader is
> intelligent and at least offers a warning when I try to run this ancient
> ./a.out: Symbol `ompi_mpi_comm_null' has different size in shared object, consider re-linking
Yes, this was definitely a problem. We introduced ABI forward compatibility in 1.3.2 that fixes this issue.
Background: even though Open MPI's MPI handles are just pointers, there's a subtlety that we didn't anticipate that makes the back-end size of the actual structs matter for global handles like MPI_COMM_WORLD. In 1.3.2, we ended up padding the size of back-end MPI objects for pre-defined handles (like MPI_COMM_WORLD, MPI_INT, ...etc.) to help isolate us from future struct size changes.