[OMPI users] problem building static w/ 1.1.2_rc4

2006-10-13 Thread Josh England
c/x86_64-redhat-linux/3.4.6/../../../../lib64/libc.a(malloc.o)
/usr/lib/gcc/x86_64-redhat-linux/3.4.6/../../../../lib64/libc.a(malloc.o)(.text+0x2a50):
 In function `_int_valloc':
: multiple definition of `_int_valloc'
/apps/x86_64/mpi/openmpi/gcc-3.4.6/openmpi-1.1.2_rc4-ofed/lib/libopal.a(lt1-malloc.o)(.text+0x3d71):
 first defined here
/usr/bin/ld: Warning: size of symbol `_int_valloc' changed from 69
in 
/apps/x86_64/mpi/openmpi/gcc-3.4.6/openmpi-1.1.2_rc4-ofed/lib/libopal.a(lt1-malloc.o)
 to 71 in 
/usr/lib/gcc/x86_64-redhat-linux/3.4.6/../../../../lib64/libc.a(malloc.o)
/usr/lib/gcc/x86_64-redhat-linux/3.4.6/../../../../lib64/libc.a(malloc.o)(.text+0x2c10):
 In function `_int_realloc':
: multiple definition of `_int_realloc'
/apps/x86_64/mpi/openmpi/gcc-3.4.6/openmpi-1.1.2_rc4-ofed/lib/libopal.a(lt1-malloc.o)(.text+0x2cd8):
 first defined here
/usr/bin/ld: Warning: size of symbol `_int_realloc' changed from 765
in 
/apps/x86_64/mpi/openmpi/gcc-3.4.6/openmpi-1.1.2_rc4-ofed/lib/libopal.a(lt1-malloc.o)
 to 1273 in 
/usr/lib/gcc/x86_64-redhat-linux/3.4.6/../../../../lib64/libc.a(malloc.o)
/usr/lib/gcc/x86_64-redhat-linux/3.4.6/../../../../lib64/libc.a(malloc.o)(.text+0x42c0):
 In function `__malloc_check_init':
: multiple definition of `__malloc_check_init'
/apps/x86_64/mpi/openmpi/gcc-3.4.6/openmpi-1.1.2_rc4-ofed/lib/libopal.a(lt1-malloc.o)(.text+0x631):
 first defined here
/usr/bin/ld: Warning: size of symbol `__malloc_check_init' changed from
141
in 
/apps/x86_64/mpi/openmpi/gcc-3.4.6/openmpi-1.1.2_rc4-ofed/lib/libopal.a(lt1-malloc.o)
 to 164 in 
/usr/lib/gcc/x86_64-redhat-linux/3.4.6/../../../../lib64/libc.a(malloc.o)
collect2: ld returned 1 exit status


When I try mpicc, its seemingly unable to find some symbols, even when I
add the right library:

[root@dlogin2 examples]# mpicc -static -o cpi cpi.c -L/usr/lib64 -lsysfs
...
...  Same 'multiple definition' stuff as above, followed by:
...
/usr/ofed/lib64/libibverbs.a(src_libibverbs_la-init.o)(.text+0x23b): In
function `ibverbs_init':
: undefined reference to `sysfs_open_class'
/usr/ofed/lib64/libibverbs.a(src_libibverbs_la-init.o)(.text+0x2d0): In
function `ibverbs_init':
: undefined reference to `sysfs_get_class_devices'
/usr/ofed/lib64/libibverbs.a(src_libibverbs_la-init.o)(.text+0x2e4): In
function `ibverbs_init':
: undefined reference to `dlist_start'
/usr/ofed/lib64/libibverbs.a(src_libibverbs_la-init.o)(.text+0x2f1): In
function `ibverbs_init':
: undefined reference to `_dlist_mark_move'
/usr/ofed/lib64/libibverbs.a(src_libibverbs_la-init.o)(.text+0x334): In
function `ibverbs_init':
: undefined reference to `sysfs_open_class_device'
collect2: ld returned 1 exit status

[root@dlogin2 examples]# nm /usr/lib64/libsysfs.a |grep
sysfs_open_class_device

0d60 T sysfs_open_class_device
0170 T sysfs_open_class_device_path


I configured ompi with '--with-openib=/usr/ofed --with-tm=/apps/torque
--enable-static --without-libnuma' .

Is there something I missed doing in order to be able to compile static
binaries?  Any help is greatly appreciated.

-JE

-- 

---
Josh England
Sandia National Laboratory, Albuquerque, NM
Infrastructure Computing Systems
email: jjen...@sandia.gov
phone: (505) 284-0963




Re: [OMPI users] problem building static w/ 1.1.2_rc4

2006-10-16 Thread Josh England
On Sat, 2006-10-14 at 09:35 -0400, Jeff Squyres wrote:
> - What exactly is your intent: a) do you want 100% static executables  
> (to include the normal Linux system libraries), b) do you just want  
> to avoid having to set LD_LIBRARY_PATH for some of the esoteric  
> libraries such as libmpi, libtorque, libibverbs, etc., or c)  
> something else?

The intent is more along the line of b).

> Given the messages from the linker and my prior mail, I'm not sure  
> that a) is possible -- it will require more poking around to know for  
> sure.  b) is definitely possible simply by using --enable-static and  
> --disable-shared and then using "mpicc" (and friends) as normal.   
> OMPI will be built statically (to include torque and libibverbs,  
> assuming you have .a's versions of both of those), but as Scott  
> mentioned, system libraries such as dl and sysfs will be linked  
> dynamically.

This sounds feasible, but it seems to me that if I configure Open MPI to
build both static and shared libraries in the same build, I should be
able to build both static and shared binaries from the same build.  This
is the behavior seen with other MPI implementations.  Is there a way to
get this behavior in Open MPI without having to deploy two different
installations, one shared and one purely static?

-JE





Re: [OMPI users] problem building static w/ 1.1.2_rc4

2006-10-16 Thread Josh England
On Sat, 2006-10-14 at 09:35 -0400, Jeff Squyres wrote:
> Given the messages from the linker and my prior mail, I'm not sure  
> that a) is possible -- it will require more poking around to know for  
> sure.  b) is definitely possible simply by using --enable-static and  
> and then using "mpicc" (and friends) as normal.   
> OMPI will be built statically (to include torque and libibverbs,  
> assuming you have .a's versions of both of those), but as Scott  
> mentioned, system libraries such as dl and sysfs will be linked  
> dynamically.

OK.  I've got a build with --enable-static and --disable-shared, and I'm
still seeing the *exact* same behavior.  I cannot build a static library
either with mpicc or specifying a manual link line.  Note that this
appears to be a problem only with 1.1.2_rc4.  Open MPI version 1.1.1
seems to work.

-JE





Re: [OMPI users] problem building static w/ 1.1.2_rc4

2006-10-16 Thread Josh England
On Sun, 2006-10-15 at 23:31 -0600, Josh England wrote:
> On Sat, 2006-10-14 at 09:35 -0400, Jeff Squyres wrote:
> > Given the messages from the linker and my prior mail, I'm not sure  
> > that a) is possible -- it will require more poking around to know for  
> > sure.  b) is definitely possible simply by using --enable-static and  
> > and then using "mpicc" (and friends) as normal.   
> > OMPI will be built statically (to include torque and libibverbs,  
> > assuming you have .a's versions of both of those), but as Scott  
> > mentioned, system libraries such as dl and sysfs will be linked  
> > dynamically.
> 
> OK.  I've got a build with --enable-static and --disable-shared, and I'm
> still seeing the *exact* same behavior.  I cannot build a static library
> either with mpicc or specifying a manual link line.  Note that this
> appears to be a problem only with 1.1.2_rc4.  Open MPI version 1.1.1
> seems to work.

Sorry.  I wrote too fast.  Version 1.1.1 actually *does not* work for
static builds either.  It exhibits the same problem described in the
original post.

-JE





[OMPI users] settings not read from env

2007-05-24 Thread Josh England
Hi all,

Found a bug maybe:

I'm setting the following environment variables:
OMPI_MCA_btl="tcp,self"
OMPI_MCA_btl_tcp_if_include="eth2"
OMPI_MCA_btl_tcp_if_exclude="eth0"

However, when I run 'ompi_info --param btl tcp' I see (among other
things):
MCA btl: parameter "btl" (current value: )
MCA btl: parameter "btl_tcp_if_include" (current value: "eth2")
MCA btl: parameter "btl_tcp_if_exclude" (current value: "eth0")

^^^ The btl setting in my environment does not seem to be getting set
properly.  This looks like a bug, but I might just be doing something
wrong.

-JE