* Didier Lucor wrote on Wed, May 10, 2006 at 04:15:04PM CEST:
> On May 10, 2006, at 4:09 PM, Ralf Wildenhues wrote:
> >
> > mpic++ -showme -o comm_get_name_cxx comm_get_name_cxx.o -L../reporting -llamtest
>
> g++ -I/usr/local/include -D_REENTRANT -o comm_get_name_cxx
> comm_get_name_cxx.o -L../reporting -llamtest -Wl,-u -
> Wl,_lam_darwin_malloc_linker_hack -Wl,-multiply_defined,suppress -Wl,-
> force_flat_namespace -Wl,-flat_namespace -Wl,-multiply_defined -
> Wl,suppress -L/usr/local/lib -llammpio -llammpi++ -lmpi -llam -ldl
The issue is as follows: you are using an unreleased GCC (from SVN, I
suppose):
>>> /usr/bin/ld: multiple definitions of symbol ___cxa_atexit
>>> /usr/local/lib/gcc/powerpc-apple-darwin8.6.0/4.2.0/crt3.o private
and that GCC has a bug in conjunction with the current linker:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27408
The workaround is to either go back to a released GCC, or to not use
"-force_flat_namespace"; you'll probably have to hack the lam-7.1.2
configure script to not enable that, rerun configure in a clean tree,
and rebuild, install. With my passing knowledge about Darwin, I have no
idea whether LAM should change this setting, and what impact that change
would have.
Kudos go to Peter O'Gorman for helping out on this.
Cheers,
Ralf
|