FWIW: this is on Mac 10.10.2, using clang and clang++ OMPI master - bunch of warnings, but it successfully builds: In file included from ./libevent/event-internal.h:38: ./libevent/minheap-internal.h:64:6: warning: unused function 'min_heap_ctor' [-Wunused-function] void min_heap_ctor(min_heap_t* s) { s->p = 0; s->n = 0; s->a = 0; } ^ ./libevent/minheap-internal.h:65:6: warning: unused function 'min_heap_dtor' [-Wunused-function] void min_heap_dtor(min_heap_t* s) { if (s->p) mm_free(s->p); } ^ ./libevent/minheap-internal.h:66:6: warning: unused function 'min_heap_elem_init' [-Wunused-function] void min_heap_elem_init(struct event* e) { e->ev_timeout_pos.min_heap_idx = -1; } ^ ./libevent/minheap-internal.h:67:5: warning: unused function 'min_heap_empty' [-Wunused-function] int min_heap_empty(min_heap_t* s) { return 0u == s->n; } ^ ./libevent/minheap-internal.h:68:10: warning: unused function 'min_heap_size' [-Wunused-function] unsigned min_heap_size(min_heap_t* s) { return s->n; } ^ ./libevent/minheap-internal.h:69:15: warning: unused function 'min_heap_top' [-Wunused-function] struct event* min_heap_top(min_heap_t* s) { return s->n ? *s->p : 0; } ^ ./libevent/minheap-internal.h:71:5: warning: unused function 'min_heap_push' [-Wunused-function] int min_heap_push(min_heap_t* s, struct event* e) ^ ./libevent/minheap-internal.h:79:15: warning: unused function 'min_heap_pop' [-Wunused-function] struct event* min_heap_pop(min_heap_t* s) ^ ./libevent/minheap-internal.h:91:5: warning: unused function 'min_heap_elt_is_top' [-Wunused-function] int min_heap_elt_is_top(const struct event *e) ^ ./libevent/minheap-internal.h:96:5: warning: unused function 'min_heap_erase' [-Wunused-function] int min_heap_erase(min_heap_t* s, struct event* e) ^ osc_sm_passive_target.c:161:16: warning: variable 'ret' is used uninitialized whenever 'if' condition is false [-Wsometimes-uninitialized] } else if (module->outstanding_locks[target] == lock_shared) { ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ osc_sm_passive_target.c:167:12: note: uninitialized use occurs here return ret; ^~~ osc_sm_passive_target.c:161:12: note: remove the 'if' if its condition is always true } else if (module->outstanding_locks[target] == lock_shared) { ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ osc_sm_passive_target.c:148:12: note: initialize the variable 'ret' to silence this warning int ret; ^ = 0 1 warning generated. pml_cm_recv.c:85:6: warning: no previous prototype for function 'mca_pml_cm_recv_fast_completion' [-Wmissing-prototypes] void mca_pml_cm_recv_fast_completion(struct mca_mtl_request_t *mtl_request) ^
OMPI v1.8 fails for me at an earlier stage: make Making all in config make[1]: Nothing to be done for `all'. Making all in contrib make[1]: Nothing to be done for `all'. Making all in opal Making all in include /Applications/Xcode.app/Contents/Developer/usr/bin/make all-am make[3]: Nothing to be done for `all-am'. Making all in libltdl CDPATH="${ZSH_VERSION+.}:" && cd . && /bin/sh /Users/rhc/openmpi/ompi-release/config/missing aclocal-1.15 -I ../../config aclocal-1.15: error: ../../config/autogen_found_items.m4:304: file 'opal/mca/backtrace/configure.m4' does not exist make[2]: *** [aclocal.m4] Error 1 make[1]: *** [all-recursive] Error 1 make: *** [all-recursive] Error 1 I believe we have seen this before, and it was an issue caused by a change in libtool itself. The Mac automatically updated to the new version, which triggers the problem. This is why we embedded ltdl directly into the OMPI master, and is why the master is building while the 1.8 branch is not. I don’t have a ready fix at hand - might have to wait for Jeff to return next week to advise. > On Apr 6, 2015, at 2:41 PM, Paul Hargrove <phhargr...@lbl.gov> wrote: > > On MacOS X 10.8 (where cc and c++ are clang and clang++, and the default ABI > is LP64) I've configured the release candidate with > --prefix=.... --enable-debug CC=cc CXX=c++ > > > The build fails linking opal_wrapper as shown in the "make V=1" output below. > > Based on the undefined symbol (_lt_libltdlc_LTX_preloaded_symbols) I am > guessing this is a libltdl issue. If relevant, note that configure picks the > embedded libltdl: > > *** GNU libltdl setup > checking location of libltdl... internal copy > configure: OMPI configuring in opal/libltdl > > Oddly enough, I have no problems with a build configured for the ILP32 ABI as > follows: > --prefix=.... --enable-debug CC=cc CXX=c++ \ > CFLAGS=-m32 --with-wrapper-cflags=-m32 \ > CXXFLAGS=-m32 --with-wrapper-cxxflags=-m32 \ > FCFLAGS=-m32 --with-wrapper-fcflags=-m32 > > I can send (off-list) the config.log and configure's complete stdout for both > the LP64 and ILP32 builds if requested. > > -Paul > > > /bin/sh ../../../libtool --tag=CC --mode=link cc -g -finline-functions > -fno-strict-aliasing -export-dynamic -Wl,-flat_namespace -o opal_wrapper > opal_wrapper.o ../../../opal/libopen-pal.la <http://libopen-pal.la/> > libtool: link: cc -g -finline-functions -fno-strict-aliasing > -Wl,-flat_namespace -o .libs/opal_wrapper opal_wrapper.o > ../../../opal/.libs/libopen-pal.dylib -lm > Undefined symbols for architecture x86_64: > "_lt_libltdlc_LTX_preloaded_symbols", referenced from: > import-atom in libopen-pal.dylib > ld: symbol(s) not found for architecture x86_64 > clang: error: linker command failed with exit code 1 (use -v to see > invocation) > make[2]: *** [opal_wrapper] Error 1 > make[1]: *** [all-recursive] Error 1 > make: *** [all-recursive] Error 1 > > > -- > Paul H. Hargrove phhargr...@lbl.gov > <mailto:phhargr...@lbl.gov> > Computer Languages & Systems Software (CLaSS) Group > Computer Science Department Tel: +1-510-495-2352 > Lawrence Berkeley National Laboratory Fax: +1-510-486-6900 > _______________________________________________ > devel mailing list > de...@open-mpi.org > Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/devel > Link to this post: > http://www.open-mpi.org/community/lists/devel/2015/04/17184.php