[MOAB-dev] Make check failure using Intel compiler on fusion r5160
Xiabing Xu
xbxu at mcs.anl.gov
Thu Sep 15 10:13:35 CDT 2011
I checked the code for the configure. It is looking for unordered_map within std, std::tr1 and boost namespace. If it finds one, then HAVE_UNORDERED_MAP is defined. When using the Intel compiler, unordered_map is not found, so the different code path in chosen to define the type of RProcMap in SharedSetData.hpp. Then the typo was uncovered. I will commit the fix.
Xiabing
On Sep 15, 2011, at 9:35 AM, Iulian Grindeanu wrote:
> Hi Xiabing,
>
> I think you are right, the code should be changed as you suggested.
> I do not have a fusion account, but if make check passes on intel fusion compiler with your change, you should commit it.
>
> Notice that the error does not show up on newer compilers, for which our HAVE_UNORDERED_MAP flag is defined
>
>
> --- SharedSetData.hpp (revision 5160)
> +++ SharedSetData.hpp (working copy)
> @@ -133,7 +133,7 @@
> };
>
> typedef std::map<unsigned,ProcHandleMapType> RHMap;
> - typedef std::set<std::vector<unsigned>,less_vect_indr> RProcMap;
> + typedef std::set<std::vector<unsigned>,less_vect> RProcMap;
> #endif
>
> /** Map for lookup of ProcHandleMapType instance by rank */
>
> Best Regards,
> Iulian
>
> ----- Original Message -----
>> It seems that the functor name is a typo, should be less_vect instead
>> of less_vect_indr at line 136 in SharedSetData.hpp.
>>
>> My configuration:
>> ./configure --prefix=/homes/xbxu/parvis/moab-performance/install
>> --with-mpi=/soft/mvapich2/1.4.1-intel-11.1.064
>> --with-pnetcdf=/fusion/group/climate/software/pnetcdf/parallel-netcdf-1.2.0/install
>> --with-netcdf=/fusion/group/climate/software/netcdf/netcdf-4.1.2-parallel/install
>> --with-hdf5=/fusion/group/climate/software/hdf5/hdf5-1.8.6-parallel/install
>> --with-zlib=/fusion/group/climate/software/zlib/zlib-1.2.5/install
>> --with-szip=/fusion/group/climate/software/szip/szip-2.1/install
>> --enable-optimize --disable-fortran
>> CC=/soft/mvapich2/1.4.1-intel-11.1.064/bin/mpicc
>> CXX=/soft/mvapich2/1.4.1-intel-11.1.064/bin/mpicxx
>>
>> Error messages:
>> make[5]: Entering directory
>> `/fusion/gpfs/home/xbxu/parvis/moab-performance/src/parallel'
>> /bin/sh ../../libtool --tag=CXX --mode=compile
>> /soft/mvapich2/1.4.1-intel-11.1.064/bin/mpicxx -DHAVE_CONFIG_H -I.
>> -I../.. -I../../src/moab -I../../src
>> -I/fusion/group/climate/software/pnetcdf/parallel-netcdf-1.2.0/install/include
>> -I/fusion/group/climate/software/netcdf/netcdf-4.1.2-parallel/install/include
>> -I/fusion/group/climate/software/hdf5/hdf5-1.8.6-parallel/install/include
>> -isystem
>> /fusion/group/climate/software/hdf5/hdf5-1.8.6-parallel/install/include
>> -DTEMPLATE_SPECIALIZATION -DTEMPLATE_FUNC_SPECIALIZATION
>> -DHAVE_VSNPRINTF -D_FILE_OFFSET_BITS=64 -DUSE_MPI -DHDF5_FILE
>> -DHDF5_PARALLEL -DNETCDF_FILE -DPNETCDF_FILE -DIS_BUILDING_MB
>> -DSRCDIR=. -I./.. -I.. -I./../io -I./../io/mhdf/include -Wall -wd981
>> -wd383 -wd1572 -wd2259 -O2 -DNDEBUG -MT ParallelComm.lo -MD -MP -MF
>> .deps/ParallelComm.Tpo -c -o ParallelComm.lo ParallelComm.cpp
>> libtool: compile: /soft/mvapich2/1.4.1-intel-11.1.064/bin/mpicxx
>> -DHAVE_CONFIG_H -I. -I../.. -I../../src/moab -I../../src
>> -I/fusion/group/climate/software/pnetcdf/parallel-netcdf-1.2.0/install/include
>> -I/fusion/group/climate/software/netcdf/netcdf-4.1.2-parallel/install/include
>> -I/fusion/group/climate/software/hdf5/hdf5-1.8.6-parallel/install/include
>> -isystem
>> /fusion/group/climate/software/hdf5/hdf5-1.8.6-parallel/install/include
>> -DTEMPLATE_SPECIALIZATION -DTEMPLATE_FUNC_SPECIALIZATION
>> -DHAVE_VSNPRINTF -D_FILE_OFFSET_BITS=64 -DUSE_MPI -DHDF5_FILE
>> -DHDF5_PARALLEL -DNETCDF_FILE -DPNETCDF_FILE -DIS_BUILDING_MB
>> -DSRCDIR=. -I./.. -I.. -I./../io -I./../io/mhdf/include -Wall -wd981
>> -wd383 -wd1572 -wd2259 -O2 -DNDEBUG -MT ParallelComm.lo -MD -MP -MF
>> .deps/ParallelComm.Tpo -c ParallelComm.cpp -o ParallelComm.o
>> SharedSetData.hpp(136): error: identifier "less_vect_indr" is
>> undefined
>> typedef std::set<std::vector<unsigned>,less_vect_indr> RProcMap;
>> ^
>>
>> ParallelComm.cpp(6868): remark #869: parameter "create_if_missing" was
>> never referenced
>> bool create_if_missing)
>> ^
>>
>> errmem.h(52): remark #177: function "buffer_reserve_" was declared but
>> never referenced
>> static void buffer_reserve_(buffer *b, size_t min, const char *file)
>> ^
>>
>> tuple_list.h(62): remark #177: function "tuple_list_grow" was declared
>> but never referenced
>> static void tuple_list_grow(tuple_list *tl)
>> ^
>>
>> compilation aborted for ParallelComm.cpp (code 2)
>>
>> Xiabing
More information about the moab-dev
mailing list