[mpich-discuss] Error building mpich-3.1.2 on Solaris 10 with gcc-4.9.0

Balaji, Pavan balaji at anl.gov
Sat Sep 6 08:51:43 CDT 2014


Thanks, Siegmar.  Are you seeing some errors with “make testing” or are all tests failing?  On some platforms, some tests take longer and hence show up as “timeouts”, but they are not really hanging.  But the number of such tests should be small.

We’ll look into the C++ issues.  We are trying to get a machine setup locally to test this configuration out.

Regards,

  — Pavan

On Sep 6, 2014, at 2:24 AM, Siegmar Gross <Siegmar.Gross at informatik.hs-fulda.de> wrote:

> Hi,
> 
>> Could you configure with --disable-cxx to see if you can continue?
> 
> I can build MPICH with gcc-4.9.0 without C++ bindings on Solaris 10
> Sparc and x86_64.
> 
> tyr small_prog 114 mpichversion
> MPICH Version:          3.2a1
> MPICH Release date:     Fri Sep  5 00:00:35 CDT 2014
> MPICH Device:           ch3:nemesis
> MPICH configure:        --prefix=/usr/local/mpich-3.2_64_gcc
>  --libdir=/usr/local/mpich-3.2_64_gcc/lib64
>  --includedir=/usr/local/mpich-3.2_64_gcc/include64
>  CC=gcc CXX=g++ F77=gfortran FC=gfortran CFLAGS=-m64 CXXFLAGS=-m64
>  FFLAGS=-m64 FCFLAGS=-m64 LDFLAGS=-m64
>  -L/usr/lib/sparcv9 -Wl,-rpath /usr/lib/sparcv9 --enable-f77 --enable-fc
>  --disable-cxx --enable-romio --enable-debuginfo --enable-smpcoll
>  --enable-threads=runtime --with-thread-package=posix --enable-shared
> MPICH CC:       gcc -m64   -O2
> MPICH CXX:      no -m64 
> MPICH F77:      gfortran -m64  -O2
> MPICH FC:       gfortran -m64  -O2
> 
> tyr small_prog 115 mpicc init_finalize.c
> tyr small_prog 116 mpiexec -np 1 a.out
> Hello!
> 
> tyr small_prog 117 mpicc thread_support.c 
> tyr small_prog 118 mpiexec -np 1 a.out
> I have requested MPI_THREAD_MULTIPLE in "MPI_Init_thread ()" and
> it provides MPI_THREAD_MULTIPLE
> "MPI_Query_thread ()" returned MPI_THREAD_MULTIPLE:
>        Many threads are supported and any thread may call
>        MPI functions at any time.
> "MPI_Is_thread_main ()" returned: "true".
> tyr small_prog 119 
> 
> 
> I have attached my config and log files for my Solaris Sparc version
> (even "make check" works fine). However, I get errors with "make
> testing" (APPLICATION TIMED OUT). Generally, I only use "make check",
> so perhaps I have to do it in a different way (e.g., running the test
> as normal user and not as root). I stopped this test.
> 
> By the way, you can avoid the warning about X11/Xutil.h, if you include
> X11/Xlib.h before this header file.
> 
> tyr mpich-3.2-SunOS.sparc.64_gcc_disable-cxx 135 more /usr/include/X11/Xutil.h
> /* $TOG: Xutil.h /main/45 1998/02/06 18:03:35 kaleb $ */
> ...
> /* You must include <X11/Xlib.h> before including this file */
> ...
> 
> 
> I would be grateful, if you can fix the problem for C++ bindings.
> C++ bindings are available in my Sun C 5.12 version of MPICH.
> 
> tyr fd1026 101 mpichversion 
> MPICH Version:          3.2a1
> MPICH Release date:     Fri Sep  5 00:00:35 CDT 2014
> MPICH Device:           ch3:nemesis
> MPICH configure:        --prefix=/usr/local/mpich-3.2_64_cc
>  --libdir=/usr/local/mpich-3.2_64_cc/lib64
>  --includedir=/usr/local/mpich-3.2_64_cc/include64
>  CC=cc CXX=CC F77=f77 FC=f95 CFLAGS=-m64 CXXFLAGS=-m64
>  FFLAGS=-m64 FCFLAGS=-m64 LDFLAGS=-m64
>  -L/usr/lib/sparcv9 -R/usr/lib/sparcv9 --enable-f77 --enable-fc
>  --enable-cxx --enable-romio --enable-debuginfo --enable-smpcoll
>  --enable-threads=runtime --with-thread-package=posix --enable-shared
> MPICH CC:       cc -m64   -O2
> MPICH CXX:      CC -m64  -O2
> MPICH F77:      f77 -m64 
> MPICH FC:       f95 -m64  -O2
> tyr fd1026 102 
> 
> 
> Kind regards and thank you very much for any help in advance
> 
> Siegmar
> 
> 
>> --Junchao Zhang
>> 
>> 
>> On Fri, Sep 5, 2014 at 2:26 PM, Siegmar Gross <
>> Siegmar.Gross at informatik.hs-fulda.de> wrote:
>> 
>>> Hi,
>>> 
>>> thank you very much for all answers to my problems building
>>> MPICH on Solaris with gcc-4.9.0. Today I tried to build
>>> mpich-master-v3.2a1. Unfortunately I have had the same problems.
>>> 
>>>> 1) For the linking errors you should provide the full build log but it
>>>> could just be an issue with the order of arguments passed to Solaris ld,
>>> or
>>>> if you compiled gcc to use GNU ld, the same issue might occur if the
>>>> configure script assumes Solaris => Solaris ld.
>>> 
>>> I have attached the files in the archive
>>> mpich-3.2-SunOS.sparc.64_gcc_only-m64.tar.gz
>>> 
>>> 
>>>> 2) I keep this sticky note on my wiki:
>>>> 
>>>> "Compiler or options invalid for pre-UNIX 03 X/Open applications and
>>>> pre-2001 POSIX applications"
>>>> 
>>>> 
>>> /usr/gcc/4.6/lib/gcc/i386-pc-solaris2.11/4.6.3/include-fixed/sys/feature_tests.h:362:2:
>>>> error: #error "Compiler or options invalid for pre-UNIX 03 X/Open
>>> applications
>>>> and pre-2001 POSIX applications"
>>>> 
>>>> Conflict of standards between _XOPEN_SOURCE and C99 extensions.
>>>> 
>>>> #if defined(_STDC_C99) && (defined(__XOPEN_OR_POSIX) && !defined(_XPG6))
>>>> 
>>>> As GCC standards do not match ANSI/ISO/POSIX standards strictly you need
>>> to
>>>> specify the standard you want to comply with.
>>>> Usually adding -D_XOPEN_SOURCE=500 (or 600) and/or -D__EXTENSIONS__ to
>>> your
>>>> compiler flags is a good start.
>>> 
>>> It was a little bit more complicated to get this one as far as
>>> the build with just "CFLAGS=-m64". Adding "-D__EXTENSIONS__" broke
>>> the build process. Adding "-D_XOPEN_SOURCE=500" didn't solve the
>>> problem, because Solaris expects "-D_XOPEN_SOURCE=600". Using this
>>> flag wasn't helpful, because you redefined it to "500" in file
>>> mpich-master-v3.2a1/src/mpi/romio/adio/common/ad_read.c, so that I
>>> had to add "-D_STDC_C99" to keep "600". Another problem came from
>>> file /usr/include/sys/statvfs.h ("FSTYPSZ" wasn't defined). Looking
>>> into the file showed the following.
>>> 
>>> ...
>>> #define _FSTYPSZ        16
>>> #if !defined(_XPG4_2) || defined(__EXTENSIONS__)
>>> #ifndef FSTYPSZ
>>> #define FSTYPSZ _FSTYPSZ
>>> #endif
>>> ...
>>> 
>>> Finally I could build MPICH with "CFLAGS=-m64 -std=c99 -D_STDC_C99
>>> -D_POSIX_C_SOURCE=200112L -D_XOPEN_SOURCE=600 -DFSTYPSZ=_FSTYPSZ"
>>> to the same point as with "CFLAGS=-m64". In both cases libmpicxx.so
>>> wasn't available. I have attached the files for this build process
>>> in the archive mpich-3.2-SunOS.sparc.64_gcc.tar.gz. Please let me
>>> know if you need anything else.
>>> 
>>> Kind regards
>>> 
>>> Siegmar
>>> 
>>> _______________________________________________
>>> discuss mailing list     discuss at mpich.org
>>> To manage subscription options or unsubscribe:
>>> https://lists.mpich.org/mailman/listinfo/discuss
>>> 
> <mpich-3.2-SunOS.sparc.64_gcc_disable-cxx.tar.gz>_______________________________________________
> discuss mailing list     discuss at mpich.org
> To manage subscription options or unsubscribe:
> https://lists.mpich.org/mailman/listinfo/discuss

--
Pavan Balaji  ✉️
http://www.mcs.anl.gov/~balaji



More information about the discuss mailing list