Hey folks I have been fighting the build system for the last two days and discovered something a little bothersome. It appears that there are only two ways to build OMPI:
* with all three of libevent, hwloc, and pmix internal * with all three of libevent, hwloc, and pmix external In other words, you cannot mix internal/external combinations of these three packages - their headers intertwine. If you try, you'll get a flood of errors about redefining various constants, such as; In file included from /Users/rhc/openmpi/foobar/opal/mca/pmix/pmix-internal.h:20, from ../src/pmix/pmix-internal.h:34, from ../src/util/proc_info.h:45, from pmix/pmix.c:33: /Users/rhc/openmpi/foobar/opal/include/opal_config.h:1315: warning: "HWLOC_VERSION_RELEASE" redefined 1315 | #define HWLOC_VERSION_RELEASE 1 | In file included from /Users/rhc/hwloc/build/v2.0.4/include/hwloc.h:56, from ../src/hwloc/hwloc-internal.h:29, from ../src/util/proc_info.h:44, from pmix/pmix.c:33: /Users/rhc/hwloc/build/v2.0.4/include/hwloc/autogen/config.h:18: note: this is the location of the previous definition 18 | #define HWLOC_VERSION_RELEASE 4 I think the time has come to ask ourselves: should we simplify things and just give one option for these packages? Either you build them ALL internal, or you build them ALL external? Ralph