Open MPI logo

Open MPI User's Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Open MPI User's mailing list

Subject: Re: [OMPI users] gcc problem compiling openmpi-1.6.1 on Solaris 10 sparc
From: Jeff Squyres (jsquyres_at_[hidden])
Date: 2012-09-08 15:16:40


Siegmar --

Can you test the 1.6.2rc tarball and see if the problem is resolved?

    http://www.open-mpi.org/software/ompi/v1.6/

On Aug 27, 2012, at 7:04 AM, Siegmar Gross wrote:

> Hi,
>
> we have installed the latest patches on our Solaris machines and I have
> a problem compiling openmpi-1.6.1 with gcc-4.6.2. I used the following
> commands.
>
> mkdir openmpi-1.6.1-${SYSTEM_ENV}.${MACHINE_ENV}.64_gcc
> cd openmpi-1.6.1-${SYSTEM_ENV}.${MACHINE_ENV}.64_gcc
>
> ../openmpi-1.6.1/configure --prefix=/usr/local/openmpi-1.6.1_64_gcc \
> --libdir=/usr/local/openmpi-1.6.1_64_gcc/lib64 \
> LDFLAGS="-m64 -L/usr/local/gcc-4.6.2/lib/sparcv9" \
> CC="gcc" CXX="g++" F77="gfortran" FC="gfortran" \
> CFLAGS="-m64" CXXFLAGS="-m64" FFLAGS="-m64" FCFLAGS="-m64" \
> CPP="cpp" CXXCPP="cpp" \
> CPPFLAGS="" CXXCPPFLAGS="" \
> 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-orterun-prefix-by-default \
> --with-threads=posix --enable-mpi-thread-multiple \
> --enable-opal-multi-threads \
> --with-hwloc=internal --with-ft=LAM --enable-sparse-groups \
> |& tee log.configure.$SYSTEM_ENV.$MACHINE_ENV.64_gcc
>
> make |& tee log.make.$SYSTEM_ENV.$MACHINE_ENV.64_gcc
>
> "log.configure.SunOS.sparc.64_gcc" shows no errors.
> "log.make.SunOS.sparc.64_gcc" breaks with the following error.
>
> ...
> Creating mpi/man/man3/OpenMPI.3 man page...
> make[2]: Leaving directory
> `/.../openmpi-1.6.1-SunOS.sparc.64_gcc/ompi'
> Making all in mpi/cxx
> make[2]: Entering directory
> `/.../openmpi-1.6.1-SunOS.sparc.64_gcc/ompi/mpi/cxx'
> CXX mpicxx.lo
> In file included from /usr/include/stdio.h:66:0,
> from ../../../../openmpi-1.6.1/ompi/mpi/cxx/mpicxx.h:50,
> from ../../../../openmpi-1.6.1/ompi/mpi/cxx/mpicxx.cc:22:
> /usr/include/iso/stdio_iso.h:195:60: error:
> redefinition of 'const char* restrict'
> /usr/include/iso/stdio_iso.h:195:32: error:
> 'const char* restrict' previously declared here
> /usr/include/iso/stdio_iso.h:197:16: error:
> redefinition of 'const char* restrict'
> /usr/include/iso/stdio_iso.h:196:34: error:
> 'const char* restrict' previously declared here
> /usr/include/iso/stdio_iso.h:197:38: error:
> conflicting declaration 'FILE* restrict'
> /usr/include/iso/stdio_iso.h:196:34: error:
> 'restrict' has a previous declaration as 'const char* restrict'
> /usr/include/iso/stdio_iso.h:198:48: error:
> conflicting declaration 'char* restrict'
> /usr/include/iso/stdio_iso.h:198:26: error:
> 'restrict' has a previous declaration as 'FILE* restrict'
> ...
>
> Many lines of similar errors.
>
> ...
> In file included from
> ../../../../openmpi-1.6.1/ompi/mpi/cxx/functions_inln.h:22:0,
> from ../../../../openmpi-1.6.1/ompi/mpi/cxx/mpicxx.h:272,
> from ../../../../openmpi-1.6.1/ompi/mpi/cxx/mpicxx.cc:22:
> /usr/include/string.h:65:57: error:
> conflicting declaration 'const char* restrict'
> /usr/include/string.h:65:29: error:
> 'restrict' has a previous declaration as 'char* restrict'
> /usr/include/string.h:66:9: error:
> conflicting declaration 'char** restrict'
> /usr/include/string.h:65:29: error:
> 'restrict' has a previous declaration as 'char* restrict'
> /usr/include/string.h:71:56: error:
> conflicting declaration 'const void* restrict'
> /usr/include/string.h:71:28: error:
> 'restrict' has a previous declaration as 'void* restrict'
> /usr/include/string.h:77:53: error:
> conflicting declaration 'void* restrict'
> /usr/include/string.h:77:31: error:
> 'restrict' has a previous declaration as 'const void* restrict'
> /usr/include/string.h:78:56: error:
> conflicting declaration 'void* restrict'
> /usr/include/string.h:78:34: error:
> 'restrict' has a previous declaration as 'const void* restrict'
> make[2]: *** [mpicxx.lo] Error 1
> make[2]: Leaving directory `.../openmpi-1.6.1-SunOS.sparc.64_gcc/ompi/mpi/cxx'
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory `.../openmpi-1.6.1-SunOS.sparc.64_gcc/ompi'
> make: *** [all-recursive] Error 1
> tyr openmpi-1.6.1-SunOS.sparc.64_gcc 127
>
>
> Has anyone else a similar problem? Is our system responsible for the
> problem so that I must open a service request or is something wrong
> with openmpi? Thank you very much for any help in advance.
>
>
> Kind regards
>
> Siegmar
>
> _______________________________________________
> users mailing list
> users_at_[hidden]
> http://www.open-mpi.org/mailman/listinfo.cgi/users

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