I'll let George / Nathan comment on the ebx symbol.

Yes, you do need to specify -m32 in CFLAGS and --with-wrapper*, because you may 
well want to build OMPI with one set of flags and build MPI applications with a 
different set of flags.  Hence, the wrappers don't contain all the CFLAGS used 
to build OMPI, for example.


> On Feb 26, 2015, at 10:25 PM, Paul Hargrove <[email protected]> wrote:
> 
> I am using Oracle's Studio 12.4 compilers for Linux/x86-64 to build the 
> current master tarball.
> However, I am passing "-m32" to generate x86 (ILP32 ABI) executables.
> 
> The full configure mess is:
> --prefix=[...] --enable-debug \
> CC=cc  CFLAGS="-m32"   --with-wrapper-cflags="-m32" \
> CXX=CC CXXFLAGS="-m32" --with-wrapper-cxxflags="-m32" \
> FC=f90 FCFLAGS="-m32"  --with-wrapper-fcflags="-m32"
> 
> The failing output from "make V=1" is
> /bin/sh ../../../libtool  --tag=CC   --mode=link cc  -m32 -g -mt  
> -export-dynamic    -o opal_wrapper opal_wrapper.o 
> ../../../opal/libopen-pal.la -lrt -lm -lutil   -lrt -lm -lutil
> libtool: link: cc -m32 -g -mt -o .libs/opal_wrapper opal_wrapper.o 
> -Wl,--export-dynamic  ../../../opal/.libs/libopen-pal.so -ldl -lrt -lm -lutil 
> -mt -Wl,-rpath 
> -Wl,/scratch/phargrov/OMPI/openmpi-master-linux-x86_64-ss12u4-m32/INST/lib
> ../../../opal/.libs/libopen-pal.so: undefined reference to `ebx'
> 
> Now clearly "ebx" should be referring to the CPU register, not an external 
> symbol, right?
> HOWEVER, in x86 PIC code (e.g. a .so file) one CANNOT generally use 'ebx' in 
> inline asm because it is used as the GOT pointer.
> So, their might be more than one problem here.
> 
> The same is seen with the older Studio 12.3 compilers for Linux.
> However, the problem is *NOT* seen with Studio 12.3 compilers on Solaris-11 
> and the identical configure options. 
> 
> -Paul
> 
> BTW:
> Can somebody tell me if I really need to specify "-m32" in *both* CFLAGS and 
> --with-wrapper-cflags (etc.)?
> 
> -- 
> Paul H. Hargrove                          [email protected]
> Computer Languages & Systems Software (CLaSS) Group
> Computer Science Department               Tel: +1-510-495-2352
> Lawrence Berkeley National Laboratory     Fax: +1-510-486-6900
> _______________________________________________
> devel mailing list
> [email protected]
> Subscription: http://www.open-mpi.org/mailman/listinfo.cgi/devel
> Link to this post: 
> http://www.open-mpi.org/community/lists/devel/2015/02/17073.php


-- 
Jeff Squyres
[email protected]
For corporate legal information go to: 
http://www.cisco.com/web/about/doing_business/legal/cri/

Reply via email to