[mpich-discuss] Problem with MPICH 3.0 rc1 compilation on RHEL 5

Dave Goodell goodell at mcs.anl.gov
Wed Nov 14 16:46:28 CST 2012


This is because you have selected a bare "--enable-strict" option to configure, which defaults to c89.  I'll see if there's a more pleasant way around this, but in the meantime is it acceptable for you to pass "--enable-strict=c99" instead?

The problem occurs because your compiler still responds to the "long long" type but disables the "LLONG_MAX" constant when asked for c89 mode.

-Dave

On Nov 14, 2012, at 4:14 PM CST, Yauheni Zelenko wrote:

> Hi!
> 
> I'm trying to compile MPICH 3.0 rc1 on Red Hat Enterprise Linux 5 and compilation failed because of undefined LLONG_MAX.
> 
> LLONG_MAX definition in /usr/include/limits.h is depend on C99 condition. -std=c89 is passed to GCC.
> 
> My configure options:
> 
> ./configure --prefix=${InstallDir}                                      \
>        --with-pm=hydra --with-device=ch3:nemesis                       \
>        --disable-chekpointing                                          \
>        --enable-strict --enable-fast=O3                                \
>        --disable-f77 --disable-fc                                      \
>        CC=/grid/common/pkgs/gcc/v4.4.5/bin/gcc CFLAGS="-m32 -fPIC"     \
>        CPP=/grid/common/pkgs/gcc/v4.4.5/bin/cpp                        \
>        CXX=/grid/common/pkgs/gcc/v4.4.5/bin/g++ CXXFLAGS="-m32 -fPIC"  \
>        CXXCPP=/grid/common/pkgs/gcc/v4.4.5/bin/cpp
> 
> GCC 4.4.5 is also produce next warnings:
> 
> mpi-io/write.c: In function 'MPIOI_File_write':
> mpi-io/write.c:126: warning: passing argument 1 of 'MPIU_external32_buffer_setup' discards qualifiers from pointer target type
> ./adio/include/mpiu_external32.h:20: note: expected 'void *' but argument is of type 'const void *'
> mpi-io/write_all.c: In function 'MPIOI_File_write_all':
> mpi-io/write_all.c:109: warning: passing argument 1 of 'MPIU_external32_buffer_setup' discards qualifiers from pointer target type
> ./adio/include/mpiu_external32.h:20: note: expected 'void *' but argument is of type 'const void *'
> mpi-io/write_allb.c: In function 'MPIOI_File_write_all_begin':
> mpi-io/write_allb.c:105: warning: passing argument 1 of 'MPIU_external32_buffer_setup' discards qualifiers from pointer target type
> ./adio/include/mpiu_external32.h:20: note: expected 'void *' but argument is of type 'const void *'
> mpi-io/write_ord.c: In function 'PMPI_File_write_ordered':
> mpi-io/write_ord.c:98: warning: assignment discards qualifiers from pointer target type
> mpi-io/write_ord.c:100: warning: passing argument 1 of 'MPIU_external32_buffer_setup' discards qualifiers from pointer target type
> ./adio/include/mpiu_external32.h:20: note: expected 'void *' but argument is of type 'const void *'
> mpi-io/write_ordb.c: In function 'PMPI_File_write_ordered_begin':
> mpi-io/write_ordb.c:104: warning: assignment discards qualifiers from pointer target type
> mpi-io/write_ordb.c:106: warning: passing argument 1 of 'MPIU_external32_buffer_setup' discards qualifiers from pointer target type
> ./adio/include/mpiu_external32.h:20: note: expected 'void *' but argument is of type 'const void *'
> mpi-io/write_sh.c: In function 'PMPI_File_write_shared':
> mpi-io/write_sh.c:100: warning: assignment discards qualifiers from pointer target type
> mpi-io/write_sh.c:102: warning: passing argument 1 of 'MPIU_external32_buffer_setup' discards qualifiers from pointer target type
> ./adio/include/mpiu_external32.h:20: note: expected 'void *' but argument is of type 'const void *'
> mpi-io/mpiu_external32.c: In function 'MPIU_write_external32_conversion_fn':
> mpi-io/mpiu_external32.c:24: warning: implicit declaration of function 'MPIR_Datatype_iscontig'
> mpi-io/mpiu_external32.c:24: warning: nested extern declaration of 'MPIR_Datatype_iscontig'
> mpi-io/mpiu_external32.c: In function 'MPIU_datatype_full_size':
> mpi-io/mpiu_external32.c:123: warning: unused variable 'extent'
> ./pm/pmiserv/pmip_cb.c: In function 'parse_exec_params':
> ./pm/pmiserv/pmip_cb.c:808: warning: null argument where non-null required (argument 1)
> ./pm/pmiserv/pmip_cb.c:808: warning: null argument where non-null required (argument 1)
> ./pm/pmiserv/pmip_cb.c:808: warning: null argument where non-null required (argument 2)
> ./pm/pmiserv/pmip_cb.c:808: warning: null argument where non-null required (argument 2)
> src/mpi/datatype/status_set_elements.c: In function 'PMPI_Status_set_elements':
> src/mpi/datatype/status_set_elements.c:54: warning: unused variable 'size'
> src/mpi/datatype/status_set_elements_x.c: In function 'MPIR_Status_set_elements_x_impl':
> src/mpi/datatype/status_set_elements_x.c:41: error: 'LLONG_MAX' undeclared (first use in this function)
> src/mpi/datatype/status_set_elements_x.c:41: error: (Each undeclared identifier is reported only once
> src/mpi/datatype/status_set_elements_x.c:41: error: for each function it appears in.)
> 
> Eugene.
> _______________________________________________
> discuss mailing list     discuss at mpich.org
> To manage subscription options or unsubscribe:
> https://lists.mpich.org/mailman/listinfo/discuss




More information about the discuss mailing list