FYI - there is a Libtool thread/patch that resolved this issue:

  http://lists.gnu.org/archive/html/libtool/2009-03/msg00035.html

-Ethan

On Fri, Mar/20/2009 01:36:58PM, Ethan Mallove wrote:
> On Fri, Mar/20/2009 01:09:56PM, Ethan Mallove wrote:
> > Let me try this again. Below is the error from OMPI 1.3r20826. In my
> > last email, I accidentally posted the compiler error from Sun's
> > internal OMPI source repository.
> > 
> >   $ cd opal/mca/memory/ptmalloc2
> >   $ make
> >   /bin/sh ../../../../libtool --tag=CC   --mode=link pgcc  -O -DNDEBUG  
> > -tp=k8-32    -export-dynamic    -o libopenmpi-malloc.la -rpath 
> > /opt/SUNWhpc/HPC8.2/pgi/lib malloc.lo malloc-stats.lo  -lnsl -lutil  
> > -lpthread
> >   libtool: link: pgcc -shared  -fpic -DPIC  .libs/malloc.o 
> > .libs/malloc-stats.o   -lnsl -lutil -lpthread -lc    -Wl,-soname 
> > -Wl,libopenmpi-malloc.so.0 -o .libs/libopenmpi-malloc.so.0.0.0
> >   /usr/bin/ld: warning: i386 architecture of input file `.libs/malloc.o' is 
> > incompatible with i386:x86-64 output
> >   /usr/bin/ld: warning: i386 architecture of input file 
> > `.libs/malloc-stats.o' is incompatible with i386:x86-64 output
> >   .libs/malloc.o(.text+0x14d3): In function `munmap_chunk':
> >   : undefined reference to `opal_mem_free_ptmalloc2_munmap'
> >   .libs/malloc.o(.text+0x1550): In function `mremap_chunk':
> >   : undefined reference to `opal_mem_hooks_release_hook'
> >   .libs/malloc.o(.text+0x2bd2): In function `_int_free':
> >   : undefined reference to `opal_mem_free_ptmalloc2_munmap'
> >   .libs/malloc.o(.text+0x309e): In function `_int_realloc':
> >   : undefined reference to `opal_mem_hooks_release_hook'
> >   .libs/malloc.o(.text+0x3c1a): In function `opal_mem_free_ptmalloc2_sbrk':
> >   : undefined reference to `opal_mem_hooks_release_hook'
> >   .libs/malloc.o(.text+0x3f9b): In function `ptmalloc_init':
> >   : undefined reference to `opal_mem_hooks_set_support'
> >   .libs/malloc.o(.text+0x409d): In function `new_heap':
> >   : undefined reference to `opal_mem_free_ptmalloc2_munmap'
> >   .libs/malloc.o(.text+0x40c5): In function `new_heap':
> >   : undefined reference to `opal_mem_free_ptmalloc2_munmap'
> >   .libs/malloc.o(.text+0x413f): In function `new_heap':
> >   : undefined reference to `opal_mem_free_ptmalloc2_munmap'
> >   .libs/malloc.o(.text+0x4188): In function `new_heap':
> >   : undefined reference to `opal_mem_free_ptmalloc2_munmap'
> >   .libs/malloc.o(.text+0x4272): In function `heap_trim':
> >   : undefined reference to `opal_mem_free_ptmalloc2_munmap'
> >   .libs/malloc.o(.text+0x449a): In function `arena_get2':
> >   : undefined reference to `opal_atomic_wmb'
> >   make: *** [libopenmpi-malloc.la] Error 2
> 
> I think we have located the problem.  Libtool has stripped out
> the -tp=k8-32 flag in the link step:
> 
>   /bin/sh ../../../../libtool --tag=CC --mode=link pgcc -O -DNDEBUG -tp=k8-32 
> -export-dynamic -o libopenmpi-malloc.la -rpath /opt/SUNWhpc/HPC8.2/pgi/lib 
> malloc.lo malloc-stats.lo -lnsl -lutil -lpthread
>   libtool: link: pgcc -shared -fpic -DPIC .libs/malloc.o .libs/malloc-stats.o 
> -lnsl -lutil -lpthread -lc -Wl,-soname -Wl,libopenmpi-malloc.so.0 -o 
> .libs/libopenmpi-malloc.so.0.0.0
> 
> If I add it back in manually, all is well:
> 
>   $ pgcc -tp=k8-32 -shared -fpic -DPIC .libs/malloc.o .libs/malloc-stats.o 
> -lnsl -lutil -lpthread -lc -Wl,-soname -Wl,libopenmpi-malloc.so.0 -o 
> .libs/libopenmpi-malloc.so.0.0.0
> 
> I am guessing there is some macro (LDFLAGS?) that I can override to
> prevent Libtool from stripping out the -tp=k8-32 flag.
> 
> -Ethan
> 
> 
> > 
> > -Ethan
> > 
> > 
> > On Fri, Mar/20/2009 12:49:06PM, Ethan Mallove wrote:
> > > Hi,
> > > 
> > > Has anyone successfully compiled Open MPI with the PGI compilers in
> > > 32-bit mode (e.g., using -tp=k8-32 flag)?  I am getting the following
> > > error with 32-bit:
> > > 
> > >    $ cd opal/mca/memory/ptmalloc2
> > >    $ make
> > >    /bin/sh ../../../../libtool --tag=CC --mode=link pgcc -O -DNDEBUG 
> > > -tp=k8-32 -export-dynamic -o libopenmpi-malloc.la -rpath 
> > > /opt/SUNWhpc/HPC8.2/pgi/lib malloc.lo malloc-stats.lo -lnsl -lutil 
> > > -lpthread
> > >    libtool: link: pgcc -shared -fpic -DPIC .libs/malloc.o 
> > > .libs/malloc-stats.o -lnsl -lutil -lpthread -lc -Wl,-soname 
> > > -Wl,libopenmpi-malloc.so.0 -o .libs/libopenmpi-malloc.so.0.0.0
> > >   /usr/bin/ld: warning: i386 architecture of input file `.libs/malloc.o' 
> > > is incompatible with i386:x86-64 output
> > >   /usr/bin/ld: warning: i386 architecture of input file 
> > > `.libs/malloc-stats.o' is incompatible with i386:x86-64 output
> > >   .libs/malloc.o(.text+0xcb3): In function `realloc_check':
> > >   : undefined reference to `opal_memcpy_base_module'
> > >   .libs/malloc.o(.text+0x14e3): In function `munmap_chunk':
> > >   : undefined reference to `opal_mem_free_ptmalloc2_munmap'
> > >   .libs/malloc.o(.text+0x1560): In function `mremap_chunk':
> > >   : undefined reference to `opal_mem_hooks_release_hook'
> > >   .libs/malloc.o(.text+0x2be2): In function `_int_free':
> > >   : undefined reference to `opal_mem_free_ptmalloc2_munmap'
> > >   .libs/malloc.o(.text+0x30ae): In function `_int_realloc':
> > >   : undefined reference to `opal_mem_hooks_release_hook'
> > >   .libs/malloc.o(.text+0x3c2a): In function 
> > > `opal_mem_free_ptmalloc2_sbrk':
> > >   : undefined reference to `opal_mem_hooks_release_hook'
> > >   .libs/malloc.o(.text+0x3fab): In function `ptmalloc_init':
> > >   : undefined reference to `opal_mem_hooks_set_support'
> > >   .libs/malloc.o(.text+0x40ad): In function `new_heap':
> > >   : undefined reference to `opal_mem_free_ptmalloc2_munmap'
> > >   .libs/malloc.o(.text+0x40d5): In function `new_heap':
> > >   : undefined reference to `opal_mem_free_ptmalloc2_munmap'
> > >   .libs/malloc.o(.text+0x414f): In function `new_heap':
> > >   : undefined reference to `opal_mem_free_ptmalloc2_munmap'
> > >   .libs/malloc.o(.text+0x4198): In function `new_heap':
> > >   : undefined reference to `opal_mem_free_ptmalloc2_munmap'
> > >   .libs/malloc.o(.text+0x4282): In function `heap_trim':
> > >   : undefined reference to `opal_mem_free_ptmalloc2_munmap'
> > >   .libs/malloc.o(.text+0x44aa): In function `arena_get2':
> > >   : undefined reference to `opal_atomic_wmb'
> > >   make: *** [libopenmpi-malloc.la] Error 2
> > > 
> > > -Ethan
> > > _______________________________________________
> > > users mailing list
> > > us...@open-mpi.org
> > > http://www.open-mpi.org/mailman/listinfo.cgi/users
> > _______________________________________________
> > users mailing list
> > us...@open-mpi.org
> > http://www.open-mpi.org/mailman/listinfo.cgi/users
> _______________________________________________
> users mailing list
> us...@open-mpi.org
> http://www.open-mpi.org/mailman/listinfo.cgi/users

Reply via email to