#10869: Optional package openmpi-1.4.3 fails to install on Solaris 10 (SPARC)
---------------------------------+------------------------------------------
Reporter: drkirkby | Owner: tbd
Type: defect | Status: new
Priority: major | Milestone: sage-4.7
Component: optional packages | Keywords:
Author: | Upstream: N/A
Reviewer: | Merged:
Work_issues: |
---------------------------------+------------------------------------------
== Hardware & associated software ==
* Sun T5240
* 2 x 1157 MHz T2+ processors (each with 8 cores and 64 threads)
* 32 GB RAM
* Solaris 10 update 5 (May 2009 release)
* gcc 4.5.1 (uses Sun linker and Sun assembler)
* Sage sage-4.6.2.alpha4
== How gcc was configured on t2.math ==
Since the configuration of gcc is important when building Sage, this is
shown. Note both the Sun linker and assembler are used.
{{{
kirkby@t2:32 ~$ gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/local/gcc-4.5.1/libexec/gcc/sparc-sun-
solaris2.10/4.5.1/lto-wrapper
Target: sparc-sun-solaris2.10
Configured with: ../gcc-4.5.1/configure --prefix=/usr/local/gcc-4.5.1
--with-gmp=/usr/local/gcc-4.5.1 --with-mpfr=/usr/local/gcc-4.5.1 --with-
mpc=/usr/local/gcc-4.5.1 --enable-languages=c,c++,fortran --disable-nls
--enable-checking=release --enable-werror=no --enable-multilib --with-
system-zlib --enable-bootstrap --without-gnu-as --with-as=/usr/ccs/bin/as
--without-gnu-ld --with-ld=/usr/ccs/bin/ld --with-pkgversion='Built by D.
Kirkby gmp-5.0.1 mpfr-3.0.0 mpc-0.8.2'
Thread model: posix
gcc version 4.5.1 (Built by D. Kirkby gmp-5.0.1 mpfr-3.0.0 mpc-0.8.2)
}}}
== The problem ==
As reported at #8532, the optional package OpenMPI package failed to
install on Solaris 10 SPARC. But I will close that ticket as "wont fix"
because:
* Thats against a version of OpenMPI which is very old, and was updated
in Sage recently (#8537)
* Uses hardware not generally available to everyone (it was my own Sun
Blade 2000)
* It's against an old version of Sage, which needed a patch to get any
optional packages installed.
* The error message when installing 1.4.3 is totally different to what
was seen with the older versions of the Sage and OpenMPI.
== Error message seen on t2.math with the latest MPI in Sage ==
{{{
Creating mpi/man/man3/MPI_Type_struct.3 man page...
Creating mpi/man/man3/MPI_Type_ub.3 man page...
Creating mpi/man/man3/MPI_Type_vector.3 man page...
Creating mpi/man/man3/MPI_Unpack.3 man page...
Creating mpi/man/man3/MPI_Unpack_external.3 man page...
Creating mpi/man/man3/MPI_Unpublish_name.3 man page...
Creating mpi/man/man3/MPI_Wait.3 man page...
Creating mpi/man/man3/MPI_Waitall.3 man page...
Creating mpi/man/man3/MPI_Waitany.3 man page...
Creating mpi/man/man3/MPI_Waitsome.3 man page...
Creating mpi/man/man3/MPI_Win_c2f.3 man page...
Creating mpi/man/man3/MPI_Win_call_errhandler.3 man page...
Creating mpi/man/man3/MPI_Win_complete.3 man page...
Creating mpi/man/man3/MPI_Win_create.3 man page...
Creating mpi/man/man3/MPI_Win_create_errhandler.3 man page...
Creating mpi/man/man3/MPI_Win_create_keyval.3 man page...
Creating mpi/man/man3/MPI_Win_delete_attr.3 man page...
Creating mpi/man/man3/MPI_Win_f2c.3 man page...
Creating mpi/man/man3/MPI_Win_fence.3 man page...
Creating mpi/man/man3/MPI_Win_free.3 man page...
Creating mpi/man/man3/MPI_Win_free_keyval.3 man page...
Creating mpi/man/man3/MPI_Win_get_attr.3 man page...
Creating mpi/man/man3/MPI_Win_get_errhandler.3 man page...
Creating mpi/man/man3/MPI_Win_get_group.3 man page...
Creating mpi/man/man3/MPI_Win_get_name.3 man page...
Creating mpi/man/man3/MPI_Win_lock.3 man page...
Creating mpi/man/man3/MPI_Win_post.3 man page...
Creating mpi/man/man3/MPI_Win_set_attr.3 man page...
Creating mpi/man/man3/MPI_Win_set_errhandler.3 man page...
Creating mpi/man/man3/MPI_Win_set_name.3 man page...
Creating mpi/man/man3/MPI_Win_start.3 man page...
Creating mpi/man/man3/MPI_Win_test.3 man page...
Creating mpi/man/man3/MPI_Win_unlock.3 man page...
Creating mpi/man/man3/MPI_Win_wait.3 man page...
Creating mpi/man/man3/MPI_Wtick.3 man page...
Creating mpi/man/man3/MPI_Wtime.3 man page...
Creating mpi/man/man3/OpenMPI.3 man page...
make[2]: Leaving directory
`/rootpool2/local/kirkby/t2/32/sage-4.6.2.alpha4/spkg/build/openmpi-1.4.3/src/ompi'
Making all in mpi/cxx
make[2]: Entering directory
`/rootpool2/local/kirkby/t2/32/sage-4.6.2.alpha4/spkg/build/openmpi-1.4.3/src/ompi/mpi/cxx'
depbase=`echo mpicxx.lo | sed 's|[^/]*$|.deps/&|;s|\.lo$||'`;\
/bin/bash ../../../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H
-I. -I../../../opal/include -I../../../orte/include
-I../../../ompi/include
-I../../../opal/mca/paffinity/linux/plpa/src/libplpa
-DOMPI_BUILDING_CXX_BINDINGS_LIBRARY=1 -DOMPI_SKIP_MPICXX=1 -I../../..
-D_REENTRANT -O3 -DNDEBUG -finline-functions -MT mpicxx.lo -MD -MP -MF
$depbase.Tpo -c -o mpicxx.lo mpicxx.cc &&\
mv -f $depbase.Tpo $depbase.Plo
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I../../../opal/include
-I../../../orte/include -I../../../ompi/include
-I../../../opal/mca/paffinity/linux/plpa/src/libplpa
-DOMPI_BUILDING_CXX_BINDINGS_LIBRARY=1 -DOMPI_SKIP_MPICXX=1 -I../../..
-D_REENTRANT -O3 -DNDEBUG -finline-functions -MT mpicxx.lo -MD -MP -MF
.deps/mpicxx.Tpo -c mpicxx.cc -fPIC -DPIC -o .libs/mpicxx.o
depbase=`echo intercepts.lo | sed 's|[^/]*$|.deps/&|;s|\.lo$||'`;\
/bin/bash ../../../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H
-I. -I../../../opal/include -I../../../orte/include
-I../../../ompi/include
-I../../../opal/mca/paffinity/linux/plpa/src/libplpa
-DOMPI_BUILDING_CXX_BINDINGS_LIBRARY=1 -DOMPI_SKIP_MPICXX=1 -I../../..
-D_REENTRANT -O3 -DNDEBUG -finline-functions -MT intercepts.lo -MD -MP
-MF $depbase.Tpo -c -o intercepts.lo intercepts.cc &&\
mv -f $depbase.Tpo $depbase.Plo
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I../../../opal/include
-I../../../orte/include -I../../../ompi/include
-I../../../opal/mca/paffinity/linux/plpa/src/libplpa
-DOMPI_BUILDING_CXX_BINDINGS_LIBRARY=1 -DOMPI_SKIP_MPICXX=1 -I../../..
-D_REENTRANT -O3 -DNDEBUG -finline-functions -MT intercepts.lo -MD -MP -MF
.deps/intercepts.Tpo -c intercepts.cc -fPIC -DPIC -o .libs/intercepts.o
depbase=`echo comm.lo | sed 's|[^/]*$|.deps/&|;s|\.lo$||'`;\
/bin/bash ../../../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H
-I. -I../../../opal/include -I../../../orte/include
-I../../../ompi/include
-I../../../opal/mca/paffinity/linux/plpa/src/libplpa
-DOMPI_BUILDING_CXX_BINDINGS_LIBRARY=1 -DOMPI_SKIP_MPICXX=1 -I../../..
-D_REENTRANT -O3 -DNDEBUG -finline-functions -MT comm.lo -MD -MP -MF
$depbase.Tpo -c -o comm.lo comm.cc &&\
mv -f $depbase.Tpo $depbase.Plo
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I../../../opal/include
-I../../../orte/include -I../../../ompi/include
-I../../../opal/mca/paffinity/linux/plpa/src/libplpa
-DOMPI_BUILDING_CXX_BINDINGS_LIBRARY=1 -DOMPI_SKIP_MPICXX=1 -I../../..
-D_REENTRANT -O3 -DNDEBUG -finline-functions -MT comm.lo -MD -MP -MF
.deps/comm.Tpo -c comm.cc -fPIC -DPIC -o .libs/comm.o
depbase=`echo datatype.lo | sed 's|[^/]*$|.deps/&|;s|\.lo$||'`;\
/bin/bash ../../../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H
-I. -I../../../opal/include -I../../../orte/include
-I../../../ompi/include
-I../../../opal/mca/paffinity/linux/plpa/src/libplpa
-DOMPI_BUILDING_CXX_BINDINGS_LIBRARY=1 -DOMPI_SKIP_MPICXX=1 -I../../..
-D_REENTRANT -O3 -DNDEBUG -finline-functions -MT datatype.lo -MD -MP -MF
$depbase.Tpo -c -o datatype.lo datatype.cc &&\
mv -f $depbase.Tpo $depbase.Plo
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I../../../opal/include
-I../../../orte/include -I../../../ompi/include
-I../../../opal/mca/paffinity/linux/plpa/src/libplpa
-DOMPI_BUILDING_CXX_BINDINGS_LIBRARY=1 -DOMPI_SKIP_MPICXX=1 -I../../..
-D_REENTRANT -O3 -DNDEBUG -finline-functions -MT datatype.lo -MD -MP -MF
.deps/datatype.Tpo -c datatype.cc -fPIC -DPIC -o .libs/datatype.o
depbase=`echo win.lo | sed 's|[^/]*$|.deps/&|;s|\.lo$||'`;\
/bin/bash ../../../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H
-I. -I../../../opal/include -I../../../orte/include
-I../../../ompi/include
-I../../../opal/mca/paffinity/linux/plpa/src/libplpa
-DOMPI_BUILDING_CXX_BINDINGS_LIBRARY=1 -DOMPI_SKIP_MPICXX=1 -I../../..
-D_REENTRANT -O3 -DNDEBUG -finline-functions -MT win.lo -MD -MP -MF
$depbase.Tpo -c -o win.lo win.cc &&\
mv -f $depbase.Tpo $depbase.Plo
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I../../../opal/include
-I../../../orte/include -I../../../ompi/include
-I../../../opal/mca/paffinity/linux/plpa/src/libplpa
-DOMPI_BUILDING_CXX_BINDINGS_LIBRARY=1 -DOMPI_SKIP_MPICXX=1 -I../../..
-D_REENTRANT -O3 -DNDEBUG -finline-functions -MT win.lo -MD -MP -MF
.deps/win.Tpo -c win.cc -fPIC -DPIC -o .libs/win.o
depbase=`echo file.lo | sed 's|[^/]*$|.deps/&|;s|\.lo$||'`;\
/bin/bash ../../../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H
-I. -I../../../opal/include -I../../../orte/include
-I../../../ompi/include
-I../../../opal/mca/paffinity/linux/plpa/src/libplpa
-DOMPI_BUILDING_CXX_BINDINGS_LIBRARY=1 -DOMPI_SKIP_MPICXX=1 -I../../..
-D_REENTRANT -O3 -DNDEBUG -finline-functions -MT file.lo -MD -MP -MF
$depbase.Tpo -c -o file.lo file.cc &&\
mv -f $depbase.Tpo $depbase.Plo
libtool: compile: g++ -DHAVE_CONFIG_H -I. -I../../../opal/include
-I../../../orte/include -I../../../ompi/include
-I../../../opal/mca/paffinity/linux/plpa/src/libplpa
-DOMPI_BUILDING_CXX_BINDINGS_LIBRARY=1 -DOMPI_SKIP_MPICXX=1 -I../../..
-D_REENTRANT -O3 -DNDEBUG -finline-functions -MT file.lo -MD -MP -MF
.deps/file.Tpo -c file.cc -fPIC -DPIC -o .libs/file.o
/bin/bash ../../../libtool --tag=CXX --mode=link g++ -O3 -DNDEBUG
-finline-functions -version-info 0:1:0 -export-dynamic -o libmpi_cxx.la
-rpath /rootpool2/local/kirkby/t2/32/sage-4.6.2.alpha4/local/lib mpicxx.lo
intercepts.lo comm.lo datatype.lo win.lo file.lo ../../../ompi/libmpi.la
-lsocket -lnsl -lrt -lm -lthread
libtool: link: g++ -shared -nostdlib -export-dynamic
/usr/local/gcc-4.5.1/lib/gcc/sparc-sun-solaris2.10/4.5.1/crti.o
/usr/ccs/lib/values-Xa.o /usr/local/gcc-4.5.1/lib/gcc/sparc-sun-
solaris2.10/4.5.1/crtbegin.o .libs/mpicxx.o .libs/intercepts.o
.libs/comm.o .libs/datatype.o .libs/win.o .libs/file.o -Wl,-R
-Wl,/rootpool2/local/kirkby/t2/32/sage-4.6.2.alpha4/spkg/build/openmpi-1.4.3/src/ompi/.libs
-Wl,-R
-Wl,/rootpool2/local/kirkby/t2/32/sage-4.6.2.alpha4/spkg/build/openmpi-1.4.3/src/orte/.libs
-Wl,-R
-Wl,/rootpool2/local/kirkby/t2/32/sage-4.6.2.alpha4/spkg/build/openmpi-1.4.3/src/opal/.libs
-Wl,-R -Wl,/usr/local/gcc-4.5.1/lib -Wl,-R
-Wl,/rootpool2/local/kirkby/t2/32/sage-4.6.2.alpha4/local/lib -Wl,-R
-Wl,/usr/local/gcc-4.5.1/lib
-L/rootpool2/local/kirkby/t2/32/sage-4.6.2.alpha4/spkg/build/openmpi-1.4.3/src/orte/.libs
-L/rootpool2/local/kirkby/t2/32/sage-4.6.2.alpha4/spkg/build/openmpi-1.4.3/src/opal/.libs
../../../ompi/.libs/libmpi.so
/rootpool2/local/kirkby/t2/32/sage-4.6.2.alpha4/spkg/build/openmpi-1.4.3/src/orte/.libs
/libopen-rte.so
/rootpool2/local/kirkby/t2/32/sage-4.6.2.alpha4/spkg/build/openmpi-1.4.3/src/opal/.libs
/libopen-pal.so -lsocket -lnsl -lrt -lthread
-L/rootpool2/local/kirkby/t2/32/sage-4.6.2.alpha4/local/lib
-L/usr/local/gcc-4.5.1/lib/gcc/sparc-sun-solaris2.10/4.5.1 -L/usr/ccs/lib
-L/usr/local/gcc-4.5.1/lib/gcc/sparc-sun-solaris2.10/4.5.1/../../..
/usr/local/gcc-4.5.1/lib/libstdc++.so -lm -lgcc_s
/usr/local/gcc-4.5.1/lib/gcc/sparc-sun-solaris2.10/4.5.1/crtend.o
/usr/local/gcc-4.5.1/lib/gcc/sparc-sun-solaris2.10/4.5.1/crtn.o -Wl,-h
-Wl,libmpi_cxx.so.0 -o .libs/libmpi_cxx.so.0.0.1
collect2: ld returned 1 exit status
make[2]: *** [libmpi_cxx.la] Error 1
make[2]: Leaving directory
`/rootpool2/local/kirkby/t2/32/sage-4.6.2.alpha4/spkg/build/openmpi-1.4.3/src/ompi/mpi/cxx'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory
`/rootpool2/local/kirkby/t2/32/sage-4.6.2.alpha4/spkg/build/openmpi-1.4.3/src/ompi'
make: *** [all-recursive] Error 1
Error building
real 29m10.533s
user 17m30.476s
sys 12m24.355s
sage: An error occurred while installing openmpi-1.4.3
Please email sage-devel http://groups.google.com/group/sage-devel
}}}
== Linker version on t2.math ==
{{{
kirkby@t2:32 ~$ ld -V
ld: Software Generation Utilities - Solaris Link Editors: 5.10-1.496
ld: fatal: no files on input command line
}}}
== Errors message seen on host 'mark' on Skynet (Solaris 10 SPARC) ==
Although I've not tried this myself, the errors on #8522, which are with a
Sun Blade 2500, are a bit different:
{{{
make[2]: Entering directory
`/home/vbraun/mark/sage-4.6.1.alpha2/spkg/build/openmpi-1.4.3/src/opal/tools/wrappers'
depbase=`echo opal_wrapper.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
gcc "-DEXEEXT=\"\"" -I. -I../../../opal/include
-I../../../orte/include -I../../../ompi/include
-I../../../opal/mca/paffinity/linux/plpa/src/libplpa -I../../..
-D_REENTRANT -O3 -DNDEBUG -finline-functions -fno-strict-aliasing
-fvisibility=hidden -MT opal_wrapper.o -MD -MP -MF $depbase.Tpo -c -o
opal_wrapper.o opal_wrapper.c &&\
mv -f $depbase.Tpo $depbase.Po
/bin/bash ../../../libtool --tag=CC --mode=link gcc -O3 -DNDEBUG
-finline-functions -fno-strict-aliasing -fvisibility=hidden -export-
dynamic -o opal_wrapper opal_wrapper.o ../../../opal/libopen-pal.la
-lsocket -lnsl -lrt -lm -lthread
libtool: link: gcc -O3 -DNDEBUG -finline-functions -fno-strict-aliasing
-fvisibility=hidden -o .libs/opal_wrapper opal_wrapper.o
../../../opal/.libs/libopen-pal.so -lsocket -lnsl -lrt -lm -lthread
-R/home/vbraun/mark/sage-4.6.1.alpha2/local/lib
opal_wrapper.o: In function `main':
opal_wrapper.c:(.text+0xb0c): undefined reference to `opal_basename'
opal_wrapper.c:(.text+0x1700): undefined reference to `opal_few'
../../../opal/.libs/libopen-pal.so: undefined reference to
`mca_base_select'
../../../opal/.libs/libopen-pal.so: undefined reference to
`mca_base_component_list_item_t_class'
../../../opal/.libs/libopen-pal.so: undefined reference to `lt_dlexit'
../../../opal/.libs/libopen-pal.so: undefined reference to `lt_dlclose'
../../../opal/.libs/libopen-pal.so: undefined reference to
`mca_base_components_close'
../../../opal/.libs/libopen-pal.so: undefined reference to
`mca_base_components_open'
../../../opal/.libs/libopen-pal.so: undefined reference to `lt_dlinit'
collect2: ld returned 1 exit status
make[2]: *** [opal_wrapper] Error 1
make[2]: Leaving directory
`/home/vbraun/mark/sage-4.6.1.alpha2/spkg/build/openmpi-1.4.3/src/opal/tools/wrappers'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory
`/home/vbraun/mark/sage-4.6.1.alpha2/spkg/build/openmpi-1.4.3/src/opal'
make: *** [all-recursive] Error 1
Error building
}}}
So two different SPARC machines are giving different error messages with
the same version of OpenMPI. This could be due to different linker
versions or how different people have their systems configured.
== Issues on !OpenSolaris too ==
OpenMPI is failing to install on !OpenSolaris too. That's the subject of
#10866
== Thoughts on OpenMPI in general ==
I wonder if this package should be made "experimental" rather than
"optional", as it is:
* Not working on all support systems
* There's no information in the Sage Users guide how to use it .
* It would appear nobody has actually managed to do anything with a
cluster of computers using this in Sage. I can't find any reference to
anyone actually done anything useful with a cluster of machines.
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/10869>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/sage-trac?hl=en.