While on Solaris the SS12.4 default compiler output is 32-bit, the same
compiler on Linux defaults to 64-bit.
So, not surprisingly I see the "complementary" failure with this compiler
on Linux when configured with FCFLAGS=-m32:

libtool: compile:  f90 -DHAVE_CONFIG_H -I.
-I/scratch/phargrov/OMPI/openmpi-1.10.2rc1-linux-x86_64-ss12u4-m32/openmpi-1.10.2rc1/ompi/mpi/fortran/use-mpi-ignore-tkr
-I../../../../opal/include -I../../../../orte/include
-I../../../../ompi/include -I../../../../oshmem/include
-I../../../../opal/mca/hwloc/hwloc191/hwloc/include/private/autogen
-I../../../../opal/mca/hwloc/hwloc191/hwloc/include/hwloc/autogen
-DOMPI_PROFILE_LAYER=0 -DOMPI_COMPILING_FORTRAN_WRAPPERS=1
-I/scratch/phargrov/OMPI/openmpi-1.10.2rc1-linux-x86_64-ss12u4-m32/openmpi-1.10.2rc1
-I../../../..
-I/scratch/phargrov/OMPI/openmpi-1.10.2rc1-linux-x86_64-ss12u4-m32/openmpi-1.10.2rc1/opal/include
-I/scratch/phargrov/OMPI/openmpi-1.10.2rc1-linux-x86_64-ss12u4-m32/openmpi-1.10.2rc1/orte/include
-I/scratch/phargrov/OMPI/openmpi-1.10.2rc1-linux-x86_64-ss12u4-m32/openmpi-1.10.2rc1/ompi/include
-I/scratch/phargrov/OMPI/openmpi-1.10.2rc1-linux-x86_64-ss12u4-m32/openmpi-1.10.2rc1/oshmem/include
-I/scratch/phargrov/OMPI/openmpi-1.10.2rc1-linux-x86_64-ss12u4-m32/openmpi-1.10.2rc1/opal/mca/hwloc/hwloc191/hwloc/include
-I/scratch/phargrov/OMPI/openmpi-1.10.2rc1-linux-x86_64-ss12u4-m32/BLD/opal/mca/hwloc/hwloc191/hwloc/include
-I/scratch/phargrov/OMPI/openmpi-1.10.2rc1-linux-x86_64-ss12u4-m32/openmpi-1.10.2rc1/opal/mca/event/libevent2021/libevent
-I/scratch/phargrov/OMPI/openmpi-1.10.2rc1-linux-x86_64-ss12u4-m32/openmpi-1.10.2rc1/opal/mca/event/libevent2021/libevent/include
-I/scratch/phargrov/OMPI/openmpi-1.10.2rc1-linux-x86_64-ss12u4-m32/BLD/opal/mca/event/libevent2021/libevent/include
-I../../../../ompi/include
-I/scratch/phargrov/OMPI/openmpi-1.10.2rc1-linux-x86_64-ss12u4-m32/openmpi-1.10.2rc1/ompi/include
-I../../../..
-I/scratch/phargrov/OMPI/openmpi-1.10.2rc1-linux-x86_64-ss12u4-m32/openmpi-1.10.2rc1
-c
/scratch/phargrov/OMPI/openmpi-1.10.2rc1-linux-x86_64-ss12u4-m32/openmpi-1.10.2rc1/ompi/mpi/fortran/use-mpi-ignore-tkr/mpi-ignore-tkr.F90
 -KPIC -o .libs/mpi-ignore-tkr.o
/bin/sh ../../../../libtool  --tag=FC   --mode=link f90
-I../../../../ompi/include
-I/scratch/phargrov/OMPI/openmpi-1.10.2rc1-linux-x86_64-ss12u4-m32/openmpi-1.10.2rc1/ompi/include
-I../../../..
-I/scratch/phargrov/OMPI/openmpi-1.10.2rc1-linux-x86_64-ss12u4-m32/openmpi-1.10.2rc1
  -version-info 6:0:0   -o libmpi_usempi_ignore_tkr.la -rpath
/scratch/phargrov/OMPI/openmpi-1.10.2rc1-linux-x86_64-ss12u4-m32/INST/lib
mpi-ignore-tkr.lo
/scratch/phargrov/OMPI/openmpi-1.10.2rc1-linux-x86_64-ss12u4-m32/BLD/opal/
libopen-pal.la -lrt -lm -lutil
libtool: link: f90 -G  -KPIC  .libs/mpi-ignore-tkr.o   -Qoption ld -rpath
-Qoption ld
/scratch/phargrov/OMPI/openmpi-1.10.2rc1-linux-x86_64-ss12u4-m32/BLD/opal/.libs
-Qoption ld -rpath -Qoption ld
/scratch/phargrov/OMPI/openmpi-1.10.2rc1-linux-x86_64-ss12u4-m32/INST/lib
/scratch/phargrov/OMPI/openmpi-1.10.2rc1-linux-x86_64-ss12u4-m32/BLD/opal/.libs/libopen-pal.so
-lnuma -ldl -lrt -lm -lutil    -Qoption ld -soname -Qoption ld
libmpi_usempi_ignore_tkr.so.6 -o .libs/libmpi_usempi_ignore_tkr.so.6.0.0
/scratch/phargrov/OMPI/openmpi-1.10.2rc1-linux-x86_64-ss12u4-m32/BLD/opal/.libs/libopen-pal.so:
could not read symbols: File in wrong format
make[2]: *** [libmpi_usempi_ignore_tkr.la] Error 2


-Paul

On Sat, Dec 19, 2015 at 1:17 PM, Paul Hargrove <phhargr...@lbl.gov> wrote:

> I am using the 12.4 release of the Solaris Studio compilers on a Solaris
> system that was fine with 1.10.1.
> I am configuring with
>
> configure --prefix=[...] --enable-debug CC=cc CXX=CC FC=f90 \
>     CFLAGS=-m64 --with-wrapper-cflags=-m64 \
>     CXXFLAGS='-m64 -library=stlport4' --with-wrapper-cxxflags='-m64
> -library=stlport4' \
>     FCFLAGS=-m64 --with-wrapper-fcflags=-m64 \
>     --with-verbs --enable-mpi-java --with-jdk-dir=/usr/jdk/latest
>
>
> The build fails to link libmpi_usempi_ignore_tkr.la, apparently because
> "-m64" is missing from the link command (note that the default compiler
> output is "-m32"):
>
> libtool: compile:  f90 -DHAVE_CONFIG_H -I.
> -I/shared/OMPI/openmpi-1.10.2rc1-solaris11-x64-ib-ss12u4/openmpi-1.10.2rc1/ompi/mpi/fortran/use-mpi-ignore-tkr
> -I../../../../opal/include -I../../../../orte/include
> -I../../../../ompi/include -I../../../../oshmem/include
> -I../../../../opal/mca/hwloc/hwloc191/hwloc/include/private/autogen
> -I../../../../opal/mca/hwloc/hwloc191/hwloc/include/hwloc/autogen
> -DOMPI_PROFILE_LAYER=0 -DOMPI_COMPILING_FORTRAN_WRAPPERS=1
> -I/shared/OMPI/openmpi-1.10.2rc1-solaris11-x64-ib-ss12u4/openmpi-1.10.2rc1
> -I../../../..
> -I/shared/OMPI/openmpi-1.10.2rc1-solaris11-x64-ib-ss12u4/openmpi-1.10.2rc1/opal/include
> -I/shared/OMPI/openmpi-1.10.2rc1-solaris11-x64-ib-ss12u4/openmpi-1.10.2rc1/orte/include
> -I/shared/OMPI/openmpi-1.10.2rc1-solaris11-x64-ib-ss12u4/openmpi-1.10.2rc1/ompi/include
> -I/shared/OMPI/openmpi-1.10.2rc1-solaris11-x64-ib-ss12u4/openmpi-1.10.2rc1/oshmem/include
> -D_REENTRANT
> -I/shared/OMPI/openmpi-1.10.2rc1-solaris11-x64-ib-ss12u4/openmpi-1.10.2rc1/opal/mca/hwloc/hwloc191/hwloc/include
> -I/shared/OMPI/openmpi-1.10.2rc1-solaris11-x64-ib-ss12u4/BLD/opal/mca/hwloc/hwloc191/hwloc/include
> -I/shared/OMPI/openmpi-1.10.2rc1-solaris11-x64-ib-ss12u4/openmpi-1.10.2rc1/opal/mca/event/libevent2021/libevent
> -I/shared/OMPI/openmpi-1.10.2rc1-solaris11-x64-ib-ss12u4/openmpi-1.10.2rc1/opal/mca/event/libevent2021/libevent/include
> -I/shared/OMPI/openmpi-1.10.2rc1-solaris11-x64-ib-ss12u4/BLD/opal/mca/event/libevent2021/libevent/include
> -I../../../../ompi/include
> -I/shared/OMPI/openmpi-1.10.2rc1-solaris11-x64-ib-ss12u4/openmpi-1.10.2rc1/ompi/include
> -I../../../..
> -I/shared/OMPI/openmpi-1.10.2rc1-solaris11-x64-ib-ss12u4/openmpi-1.10.2rc1
> -c
> /shared/OMPI/openmpi-1.10.2rc1-solaris11-x64-ib-ss12u4/openmpi-1.10.2rc1/ompi/mpi/fortran/use-mpi-ignore-tkr/mpi-ignore-tkr.F90
>  -KPIC -o .libs/mpi-ignore-tkr.o
> /bin/sh ../../../../libtool  --tag=FC   --mode=link f90
> -I../../../../ompi/include
> -I/shared/OMPI/openmpi-1.10.2rc1-solaris11-x64-ib-ss12u4/openmpi-1.10.2rc1/ompi/include
> -I../../../..
> -I/shared/OMPI/openmpi-1.10.2rc1-solaris11-x64-ib-ss12u4/openmpi-1.10.2rc1
>   -version-info 6:0:0   -o libmpi_usempi_ignore_tkr.la -rpath
> /shared/OMPI/openmpi-1.10.2rc1-solaris11-x64-ib-ss12u4/INST/lib
> mpi-ignore-tkr.lo
> /shared/OMPI/openmpi-1.10.2rc1-solaris11-x64-ib-ss12u4/BLD/opal/
> libopen-pal.la -lm -lsocket -lnsl
> libtool: link: f90 -G -h libmpi_usempi_ignore_tkr.so.6 -o
> .libs/libmpi_usempi_ignore_tkr.so.6.0.0  .libs/mpi-ignore-tkr.o
> -R/shared/OMPI/openmpi-1.10.2rc1-solaris11-x64-ib-ss12u4/BLD/opal/.libs
> -R/shared/OMPI/openmpi-1.10.2rc1-solaris11-x64-ib-ss12u4/INST/lib
> /shared/OMPI/openmpi-1.10.2rc1-solaris11-x64-ib-ss12u4/BLD/opal/.libs/libopen-pal.so
> -lsendfile -lpicl -lkstat -llgrp -lpciaccess -lm -lsocket -lnsl
> ld: fatal: file
> /shared/OMPI/openmpi-1.10.2rc1-solaris11-x64-ib-ss12u4/BLD/opal/.libs/libopen-pal.so:
> wrong ELF class: ELFCLASS64
> gmake[2]: *** [libmpi_usempi_ignore_tkr.la] Error 2
>
>
> -Paul
>
> --
> Paul H. Hargrove                          phhargr...@lbl.gov
> Computer Languages & Systems Software (CLaSS) Group
> Computer Science Department               Tel: +1-510-495-2352
> Lawrence Berkeley National Laboratory     Fax: +1-510-486-6900
>



-- 
Paul H. Hargrove                          phhargr...@lbl.gov
Computer Languages & Systems Software (CLaSS) Group
Computer Science Department               Tel: +1-510-495-2352
Lawrence Berkeley National Laboratory     Fax: +1-510-486-6900

Reply via email to