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


Reply via email to