Opened 6 years ago

Closed 6 years ago

#64 closed defect (fixed)

Compile error when using option netcdf4_internal on Bull Intel with mpiifort

Reported by: ssenesi Owned by: ymipsl
Priority: major Component: XIOS
Version: 1.0 Keywords:
Cc: rlacroix

Description

In that case, with release 549, I get a 'catastrophic error' (I didn't choose that qualifier myself !) :

fcm_internal compile:C netcdf /home/gmgec/mrgu/senesis/SAVE/XIOS_mt_par/extern/netcdf4/mmapio.c mmapio.o 1
mpiicc -o mmapio.o -DUSING_NETCDF_PAR -DUSING_NETCDF_INTERNAL -I/home/gmgec/mrgu/senesis/SAVE/XIOS_mt_par/inc -ansi -diag-disable 1125 -diag-disable 279 -openmp -openmp-threadprivate compat -openmp-report2 -O3 -D BOOST_DISABLE_ASSERTS -I/home/gmgec/mrgu/senesis/SAVE/XIOS_mt_par/extern/netcdf4 -I/opt/softs/libraries/ICC13.1.4.183/hdf5-1.8.11_par/include -I/home/gmgec/mrgu/senesis/SAVE/XIOS_mt_par/extern/src_netcdf -I/home/gmgec/mrgu/senesis/SAVE/XIOS_mt_par/extern/boost/include -I/home/gmgec/mrgu/senesis/SAVE/XIOS_mt_par/extern/rapidxml/include -I/home/gmgec/mrgu/senesis/SAVE/XIOS_mt_par/extern/blitz/include -c /home/gmgec/mrgu/senesis/SAVE/XIOS_mt_par/extern/netcdf4/mmapio.c
/home/gmgec/mrgu/senesis/SAVE/XIOS_mt_par/extern/netcdf4/mmapio.c(38): catastrophic error: #error directive: mmap not fully implemented: missing MAP_ANONYMOUS

#error mmap not fully implemented: missing MAP_ANONYMOUS


Attachments (2)

arch-mpiifort_beaufix.fcm (1.1 KB) - added by ssenesi 6 years ago.
arch-mpiifort_beaufix.env (200 bytes) - added by ssenesi 6 years ago.

Download all attachments as: .zip

Change History (6)

Changed 6 years ago by ssenesi

Changed 6 years ago by ssenesi

comment:1 Changed 6 years ago by rlacroix

  • Cc rlacroix added

I'm not completely sure but it might be because using mpiicc engages some sort of stricter compilation mode. You could try adding -std=gnu89 or -std=gnu99 to the compiler definition and see if that helps.

comment:2 Changed 6 years ago by rlacroix

I missed something last time, I'm pretty sure -ansi will engage a stricter mode than what GCC and ICC use by default. Have you tried without this?

comment:3 Changed 6 years ago by ssenesi

Discarding option -ansi allows to compile and link. Thanks a lot. You could improve the 'usage' section of make_xios by stating expliclty that netcdf4_internal option brings a parallel version of NetCDF

comment:4 Changed 6 years ago by rlacroix

  • Resolution set to fixed
  • Status changed from new to closed

Good to know it fixed your issue!

About the internal NetCDF library, it was added to solve some issues with NetCDF by having our own patched version of the code. We think that most of those issues, if not all, have now been fixed in the official version so we might remove it in the near future to avoid possible confusions.

Note: See TracTickets for help on using tickets.