Open MPI logo

Open MPI Development Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Development mailing list

Subject: Re: [OMPI devel] 1.4.5rc5 has been released
From: Paul H. Hargrove (PHHargrove_at_[hidden])
Date: 2012-02-08 14:14:30


On 2/8/2012 3:25 AM, TERRY DONTJE wrote:
>> + Building w/ Solaris Studio 12.2 or 12.3 on Linux x86-64, with
>> "-m32" required setting LD_LIBRARY_PATH.
> Can the LD_LIBRARY_PATH be substituted with a rpath change in LDFLAGS
> of the build?

Terry sent more specific instructions for that offlist, and I am testing
now.

>> This is could either be Oracle's bug in the compiler, or a libtool
>> problem.
>> My report was:
>> http://www.open-mpi.org/community/lists/devel/2012/01/10272.php
>>
> I thought I responded to the above issue.

You did respond, but I didn't see any "resolution". I apologize if I
missed something in the past emails.

> I think this may be a OS distribution (Solaris Studio assumption)
> issue. On my RH system /lib contains the 32 libraries and /lib64 has
> the 64 bit libs. I assume your system may have it the other way
> around (/lib = 64 bit libs and /lib32 has 32 bit). Can you confirm
> that your /lib contains 64 bit libs. Also can you do a "cc -### -m32"
> compile and link of a simple program and confirm that the compiler is
> pulling in /lib (I am 99% certain it is).

YES to "/lib = 64 bit libs and /lib32 has 32 bit". There is also a
/lib64->/lib symlink.

Here is the requested verbose output:
$ cc -### -m32 hello.c
### cc: Note: NLSPATH =
/opt/SS12u3/solarisstudio12.3/prod/bin/../lib/locale/%L/LC_MESSAGES/%N.cat:/opt/SS12u3/solarisstudio12.3/prod/bin/../../lib/locale/%L/LC_MESSAGES/%N.cat
### command line files and options (expanded):
### -# -m32 hello.c
/opt/SS12u3/solarisstudio12.3/prod/bin/acomp -Qy -Xa -xc99=%all -i
hello.c -D__SUNPRO_C=0x5120 -D__unix -D__unix__ -Dlinux -D__linux
-D__linux__ -D__gnu__linux__ "-D__builtin_expect(e,x)=e" -D__i386
-D__i386__ -D__BUILTIN_VA_ARG_INCR -D__C99FEATURES__
-D__PRAGMA_REDEFINE_EXTNAME -Dunix -Di386 -D__RESTRICT
-D__FLT_EVAL_METHOD__=-1 -D__SUN_PREFETCH -D__NOVECTORSIZE__ -I-xbuiltin
-I/opt/SS12u3/solarisstudio12.3/prod/lib/compilers/rtlibs/usr/include
-I/opt/SS12u3/solarisstudio12.3/prod/include/cc -xbuiltin=%none
-fsimple=0 -m32 -fparam_ir -xF=%none -xdbggen=no%stabs+dwarf2+usedonly
-xdbggen=incl -xldscope=global -xivdep=loop -c99OS
"-g/opt/SS12u3/solarisstudio12.3/prod/bin/cc -m32 " -destination_ir=yabe
-y-fbe -y/opt/SS12u3/solarisstudio12.3/prod/bin/fbe -y-verbose -y-comdat
-y-xarch=generic -y-comdat -y-xthreadvar=no%dynamic -y-xannotate=no -y-o
-yhello.o -y-s
### cc: Note: LD_LIBRARY_PATH = (null)
### cc: Note: LD_RUN_PATH = (null)
### cc: Note: LD_OPTIONS = (null)
/usr/bin/ld -m elf_i386 -dynamic-linker /lib/ld-linux.so.2
--enable-new-dtags /opt/SS12u3/solarisstudio12.3/prod/lib/crti.o
/opt/SS12u3/solarisstudio12.3/prod/lib/crt1.o
/opt/SS12u3/solarisstudio12.3/prod/lib/values-xa.o hello.o -o a.out -Y
"/opt/SS12u3/solarisstudio12.3/prod/lib:/lib32:/usr/lib32" -Qy -lc
/opt/SS12u3/solarisstudio12.3/prod/lib/libc_supp.a
/opt/SS12u3/solarisstudio12.3/prod/lib/crtn.o
rm hello.o

HOWEVER, in the failing build there was the following bit of output
showing that the system linker is NOT being used:
CC: Warning: failed to detect system linker version, falling back to
custom linker usage

> Also, is this /lib is 64 bit libraries a common thing, none of my
> Linux systems are set up this way.
This appears to be the default on Ubuntu (checked 3 hosts with 2
different releases).

-Paul

-- 
Paul H. Hargrove                          PHHargrove_at_[hidden]
Future Technologies Group
HPC Research Department                   Tel: +1-510-495-2352
Lawrence Berkeley National Laboratory     Fax: +1-510-486-6900