Hi, I tried to compile "openmpi-1.6" on "Solaris 10" and Linux (openSUSE 12.1) with "gcc-4.6.2" and "Sun C 5.12" (Oracle Solaris Studio 12.3) with mainly the following configuration for a 64- and 32-bit installation. "-L/usr/local/..." was necessary because "gcc" didn't find its 64-bit libraries without this option.
../openmpi-1.6/configure --prefix=/usr/local/openmpi-1.6_64_gcc \ --libdir=/usr/local/openmpi-1.6_64_gcc/lib64 \ LDFLAGS="-m64 -L/usr/local/gcc-4.6.2/lib/sparcv9" \ CC="gcc" CPP="cpp" CXX="g++" CXXCPP="cpp" F77="gfortran" \ CFLAGS="-m64" CXXFLAGS="-m64" FFLAGS="-m64" FCFLAGS="-m64" \ CXXLDFLAGS="-m64" CPPFLAGS="" \ C_INCL_PATH="" C_INCLUDE_PATH="" CPLUS_INCLUDE_PATH="" \ OBJC_INCLUDE_PATH="" MPIHOME="" \ --without-udapl --without-openib \ --enable-mpi-f90 --with-mpi-f90-size=small \ --enable-heterogeneous --enable-cxx-exceptions \ --enable-shared --enable-orterun-prefix-by-default \ --with-threads=posix --enable-mpi-thread-multiple \ --with-hwloc=internal --with-ft=LAM --enable-sparse-groups \ |& tee log.configure.$SYSTEM_ENV.$MACHINE_ENV.64_gcc For "cc" I used 'CC="cc" CXX="CC" F77="f77" FC="f95"'. With "gcc" I got for example the following error so that I had to add the option "--disable-vt" to the gcc-configuration. tail -n 20 log.make.SunOS.sparc.64_gcc make[5]: Leaving directory `.../ompi/contrib/vt/vt/rfg' Making all in vtlib make[5]: Entering directory `.../ompi/contrib/vt/vt/vtlib' CC vt_comp_gnu.lo CC vt_iowrap.lo CC vt_iowrap_helper.lo CC vt_libwrap.lo ../../../../../../openmpi-1.6/ompi/contrib/vt/vt/vtlib/vt_libwrap.c: In function 'get_libc_errno_ptr': ../../../../../../openmpi-1.6/ompi/contrib/vt/vt/vtlib/vt_libwrap.c: 106:20: error: called object 'libc_errno' is not a function make[5]: *** [vt_libwrap.lo] Error 1 ... With these options I was able to install OpenMPI on some of my platforms. ls -d /export2/prog/*/openmpi-1.6* /export2/prog/Linux_x86/openmpi-1.6_32_gcc /export2/prog/Linux_x86_64/openmpi-1.6_32_gcc /export2/prog/Linux_x86_64/openmpi-1.6_64_gcc /export2/prog/SunOS_sparc/openmpi-1.6_32_cc /export2/prog/SunOS_sparc/openmpi-1.6_32_gcc /export2/prog/SunOS_sparc/openmpi-1.6_64_cc /export2/prog/SunOS_sparc/openmpi-1.6_64_gcc /export2/prog/SunOS_x86_64/openmpi-1.6_32_cc /export2/prog/SunOS_x86_64/openmpi-1.6_32_gcc /export2/prog/SunOS_x86_64/openmpi-1.6_64_cc /export2/prog/SunOS_x86_64/openmpi-1.6_64_gcc Unfortunately "cc" on Linux creates the following error. ln -s "../../../openmpi-1.6/opal/asm/generated/ atomic-ia32-linux-nongas.s" atomic-asm.S CPPAS atomic-asm.lo <command-line>:19:0: warning: "__FLT_EVAL_METHOD__" redefined [enabled by default] <built-in>:110:0: note: this is the location of the previous definition cpp: fatal error: -fuse-linker-plugin, but liblto_plugin.so not found compilation terminated. cc: cpp failed for atomic-asm.S make[2]: *** [atomic-asm.lo] Error 1 make[2]: Leaving directory `/.../opal/asm' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/.../opal' make: *** [all-recursive] Error 1 Adding the option "--with-libltdl=internal" (should be the default anyway) didn't solve the problem so that I tried to add the options "--without-libltdl --disable-dlopen" to the cc-configuration on Linux. Unfortunately I still get the above error although I started everything in a new directory. ln -s "../../../openmpi-1.6/opal/asm/generated/ atomic-ia32-linux-nongas.s" atomic-asm.S CPPAS atomic-asm.lo <command-line>:19:0: warning: "__FLT_EVAL_METHOD__" redefined [enabled by default] <built-in>:110:0: note: this is the location of the previous definition cpp: fatal error: -fuse-linker-plugin, but liblto_plugin.so not found compilation terminated. cc: cpp failed for atomic-asm.S make[2]: *** [atomic-asm.lo] Error 1 make[2]: Leaving directory `/.../opal/asm' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/.../opal' make: *** [all-recursive] Error 1 linpc1 openmpi-1.6-Linux.x86.32_cc 94 more config.log This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. It was created by Open MPI configure 1.6, which was generated by GNU Autoconf 2.68. Invocation command line was $ ../openmpi-1.6/configure --prefix=/usr/local/openmpi-1.6_32_cc LDFLAGS=-m32 CC=cc CXX=CC F77=f77 FC=f95 CFLAGS=-m32 CXXFLAGS=-m32 FFLAGS=-m32 FCFLAGS=-m32 C XXLDFLAGS=-m32 CPPFLAGS= C_INCL_PATH= C_INCLUDE_PATH= CPLUS_INCLUDE_PATH= OBJC_I NCLUDE_PATH= MPICHHOME= --without-udapl --without-openib --enable-mpi-f90 --with -mpi-f90-size=small --enable-heterogeneous --enable-cxx-exceptions --enable-shar ed --enable-orterun-prefix-by-default --with-threads=posix --enable-mpi-thread-m ultiple --with-hwloc=internal --with-ft=LAM --enable-sparse-groups --without-lib ltdl --disable-dlopen I have another problem on SunOS_x86 with both "cc" and "gcc" where "configure" breaks with the following error. configure: creating ./config.status config.status: creating Makefile ./config.status: line 1197: 4396 Done(141) eval sed \"\$ac_sed_extra\" "$ac_file_inputs" 4397 Segmentation Fault | $AWK -f "$ac_tmp/subs.awk" > $ac_tmp/out config.status: error: could not create Makefile configure: /bin/bash '../../../openmpi-1.6/opal/libltdl/configure' *failed* for opal/libltdl configure: WARNING: Failed to build GNU libltdl. This usually means that something configure: WARNING: is incorrectly setup with your environment. There may be useful information in configure: WARNING: opal/libltdl/config.log. You can also disable GNU libltdl, which will disable configure: WARNING: dynamic shared object loading, by configuring with --disable-dlopen. configure: error: Cannot continue I tried once more adding the option "--disable-dlopen" without success. configure: creating ./config.status config.status: creating ompi/include/ompi/version.h ./config.status: line 3410: 26746 Done eval sed \"\$ac_sed_extra\" "$ac_file_inputs" 26747 Segmentation Fault | $AWK -f "$ac_tmp/subs.awk" > $ac_tmp/out config.status: error: could not create ompi/include/ompi/version.h sunpc1 openmpi-1.6-SunOS.x86.32_gcc 83 more config.log This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. It was created by Open MPI configure 1.6, which was generated by GNU Autoconf 2.68. Invocation command line was $ ../openmpi-1.6/configure --prefix=/usr/local/openmpi-1.6_32_cc LDFLAGS=-m32 CC=cc CXX=CC F77=f77 FC=f95 CFLAGS=-m32 CXXFLAGS=-m32 FFLAGS=-m32 FCFLAGS=-m32 C XXLDFLAGS=-m32 CPPFLAGS= C_INCL_PATH= C_INCLUDE_PATH= CPLUS_INCLUDE_PATH= OBJC_I NCLUDE_PATH= MPICHHOME= --without-udapl --without-openib --enable-mpi-f90 --with -mpi-f90-size=small --enable-heterogeneous --enable-cxx-exceptions --enable-shar ed --enable-orterun-prefix-by-default --with-threads=posix --enable-mpi-thread-m ultiple --with-hwloc=internal --with-ft=LAM --enable-sparse-groups --disable-dlo pen I can create files and there is enough space available. sunpc1 fd1026 104 cd /export2/src/openmpi-1.6/ sunpc1 openmpi-1.6 105 touch x sunpc1 openmpi-1.6 106 rm x sunpc1 openmpi-1.6 107 df -kh /export2 Filesystem Size Used Avail Use% Mounted on xxx:/export2 229G 121G 107G 54% /export2 Do you have any suggestions how I can solve the problems on the following platforms? Linux_x86, 32-bit, cc Linux_x86_64, 32-bit, cc Linux_x86_64, 64-bit, cc SunOS_x86, 32-bit, cc SunOS_x86, 32-bit, gcc Thank you very much for any help in advance. Kind regards Siegmar