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
|