Ethan, I agree with Doug. Did you try to build for 64-bit in the same directory? If so, you need to do a 'make clean' or 'make distclean' before compiling for 32-bit.
Even if you didn't try to compile for 64-bit yourself, try doing 'make clean' or 'make distclean'. ;) -- Prentice Doug Reeder wrote: > Ethan, > > It looks likesome of the object files that you are trying to link to the > malloc.o and malloc-stats.o were compiled as 64 bit objects. Are you > using the 32 bit compiler flag for the compile step as well as the link > step. > > Doug Reeder > On Mar 20, 2009, at 10:49 AM, 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