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

Yauheni Zelenko zelenko at cadence.com
Wed Nov 14 17:39:14 CST 2012


Hi, Dave!

Build failed on first compilation because fstat64 and stat64 defined twice. Likely because of these functions inlining in /usr/include/sys/stat.h.

Also GCC 4.7.2 warnings on Red Hat Enterprise Linux 6:

src/mpltrmem.c: In function 'MPL_trdump':
src/mpltrmem.c:536:14: warning: variable 'old_head' set but not used [-Wunused-but-set-variable]
src/mpi/coll/opminloc.c: In function 'MPIR_MINLOC':
src/mpi/coll/opminloc.c:85:24: warning: variable 'flen' set but not used [-Wunused-but-set-variable]
src/mpi/coll/opmaxloc.c: In function 'MPIR_MAXLOC':
src/mpi/coll/opmaxloc.c:86:24: warning: variable 'flen' set but not used [-Wunused-but-set-variable]
src/mpid/ch3/src/ch3u_rma_sync.c: In function 'MPIDI_CH3I_Recv_rma_msg':
src/mpid/ch3/src/ch3u_rma_sync.c:1251:5: warning: 'mpiu_chkpmem_stk_[0]' may be used uninitialized in this function [-Wmaybe-uninitialized]
src/mpid/ch3/src/mpidi_pg.c: In function 'connToString':
src/mpid/ch3/src/mpidi_pg.c:972:5: warning: 'mpiu_chkpmem_stk_[0]' may be used uninitialized in this function [-Wmaybe-uninitialized]
src/mpid/ch3/channels/nemesis/src/ch3_progress.c: In function 'MPIDI_CH3I_Progress':
src/mpid/ch3/channels/nemesis/src/ch3_progress.c:394:21: warning: comparison between 'MPIDI_CH3_Pkt_type_t' and 'enum MPID_nem_pkt_type' [-Wenum-compare]
src/mpid/ch3/channels/nemesis/src/ch3_progress.c: In function 'MPID_nem_handle_pkt':
src/mpid/ch3/channels/nemesis/src/ch3_progress.c:636:17: warning: comparison between 'MPIDI_CH3_Pkt_type_t' and 'enum MPID_nem_pkt_type' [-Wenum-compare]
src/mpid/ch3/channels/nemesis/src/ch3_progress.c:684:13: warning: comparison between 'MPIDI_CH3_Pkt_type_t' and 'enum MPID_nem_pkt_type' [-Wenum-compare]
src/mpid/ch3/channels/nemesis/netmod/tcp/socksm.c: In function 'alloc_sc_plfd_tbls':
src/mpid/ch3/channels/nemesis/netmod/tcp/socksm.c:183:5: warning: the comparison will always evaluate as 'true' for the address of 'MPID_nem_tcp_g_lstn_sc' will never be NULL [-Waddress]
src/mpid/ch3/channels/nemesis/netmod/tcp/socksm.c:184:5: warning: the comparison will always evaluate as 'true' for the address of 'MPID_nem_tcp_g_lstn_plfd' will never be NULL [-Waddress]
src/mpid/common/datatype/mpid_type_debug.c: In function 'MPIDI_Datatype_printf':
src/mpid/common/datatype/mpid_type_debug.c:238:59: warning: variable 'sticky_ub' set but not used [-Wunused-but-set-variable]
src/mpid/common/datatype/mpid_type_debug.c:238:48: warning: variable 'sticky_lb' set but not used [-Wunused-but-set-variable]
src/mpid/common/datatype/mpid_type_debug.c:238:44: warning: variable 'ub' set but not used [-Wunused-but-set-variable]
src/mpid/common/datatype/mpid_type_debug.c:238:31: warning: variable 'true_ub' set but not used [-Wunused-but-set-variable]
src/mpid/common/datatype/mpid_type_debug.c:236:11: warning: variable 'string' set but not used [-Wunused-but-set-variable]
src/mpi/coll/iallgather.c: In function 'MPIR_Iallgather_bruck':
src/mpi/coll/iallgather.c:329:5: warning: 'mpir_sched_chkpmem_stk_[0]' may be used uninitialized in this function [-Wmaybe-uninitialized]
src/mpi/coll/iallgather.c: In function 'MPIR_Iallgather_inter':
src/mpi/coll/iallgather.c:580:5: warning: 'mpir_sched_chkpmem_stk_[0]' may be used uninitialized in this function [-Wmaybe-uninitialized]
src/mpi/coll/iallgatherv.c: In function 'MPIR_Iallgatherv_rec_dbl':
src/mpi/coll/iallgatherv.c:259:5: warning: 'mpir_sched_chkpmem_stk_[0]' may be used uninitialized in this function [-Wmaybe-uninitialized]
src/mpi/coll/iallgatherv.c: In function 'MPIR_Iallgatherv_bruck':
src/mpi/coll/iallgatherv.c:398:5: warning: 'mpir_sched_chkpmem_stk_[0]' may be used uninitialized in this function [-Wmaybe-uninitialized]
src/mpi/coll/iallreduce.c: In function 'MPIR_Iallreduce_redscat_allgather':
src/mpi/coll/iallreduce.c:282:5: warning: 'mpir_sched_chkpmem_stk_[0]' may be used uninitialized in this function [-Wmaybe-uninitialized]
src/mpi/coll/iallreduce.c: In function 'MPIR_Iallreduce_rec_dbl':
src/mpi/coll/iallreduce.c:425:5: warning: 'mpir_sched_chkpmem_stk_[0]' may be used uninitialized in this function [-Wmaybe-uninitialized]
src/mpi/coll/ired_scat_block.c: In function 'MPIR_Ireduce_scatter_block_inter':
src/mpi/coll/ired_scat_block.c:899:5: warning: 'mpir_sched_chkpmem_stk_[0]' may be used uninitialized in this function [-Wmaybe-uninitialized]
src/mpi/coll/ireduce.c: In function 'MPIR_Ireduce_SMP':
src/mpi/coll/ireduce.c:677:5: warning: 'mpir_sched_chkpmem_stk_[0]' may be used uninitialized in this function [-Wmaybe-uninitialized]

Eugene.
________________________________________
From: discuss-bounces at mpich.org [discuss-bounces at mpich.org] On Behalf Of Dave Goodell [goodell at mcs.anl.gov]
Sent: Wednesday, November 14, 2012 2:46 PM
To: discuss at mpich.org
Subject: Re: [mpich-discuss] Problem with MPICH 3.0 rc1 compilation on RHEL 5

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

_______________________________________________
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