Hi everyone, I am trying to install ioapi. when I typed make in m3tool folder I receive an error as below:
/home/nadia/Libraries/ioapi-3.2-20200828/Linux5_x86_64gfort/libnetcdff.a(nf_varaio.o): in function `nf_get_vara_int64_’:
nf_varaio.F90:(.text+0x5160): multiple definition of `nf_get_vara_int64_’; /home/nadia/Libraries/ioapi-3.2-20200828/Linux5_x86_64gfort/libioapi.a(modncfio.o):modncfio.F90:(.text+0xc1060): first defined here
collect2: error: ld returned 1 exit status
make: *** [Makefile:243: airs2m3] Error 1
can you help me to understand the problem?
my compiler is gfortran.
For I/O API-3.2 and netCDF-4: Some configurations of netCDF-4 have INTEGER*8 (64-bit integer) support, and some do not; the I/O API tries to make it possible to use this support if it is available, but needs to include “hacks” to cover for its absence when it isn’t. You can find out if it is included in netCDF using the command
nm libnetcdff.a | grep nf_get_var_int64_
If present, you need to add the definition -DIOAPI_NCF4=1 to the make-variable ARCHFLAGS in your MAKEINCLUDE.${BIN}. Otherewise, you will get “multiply defined symbol” errors when you attempt to compile programs.