NOTICE: This version of the NSF Unidata web site (archive.unidata.ucar.edu) is no longer being updated.
Current content can be found at unidata.ucar.edu.
To learn about what's going on, see About the Archive Site.
Aristotelis, The line "use netcdf" is required at the top of every fortran procedure that calls any of the nf90_ procedures (unless inheritance is in play). Your particular error message suggests that this line is missing. On many systems, a special prefix is added to all symbol names defined in fortran modules. The purpose is to isolate module name spaces. I am not familiar with windows, but I expect something similar is done there. You should be able to see this with an appropriate symbol tool. For example, gfortran on Mac OS does this: /opt/local/lib 7> nm libnetcdff.6.dylib | grep nf90_open 000000000004dd48 T ___netcdf_MOD_nf90_open 000000000004e00c T ___netcdf_MOD_nf90_open_mp 000000000000f3f7 T ___netcdf_MOD_nf90_open_par ... And under the hood, valid compiled user programs link with these decorated symbols, not with plain nf90_ symbols. HTH. On Wed, Aug 19, 2020 at 10:54 AM Aristotelis Liakatas <agliak@xxxxxxxxx> wrote: > Hello, > > I am trying to build the static library for netcdf-Fortran on Windows 10 > using VS2019 and Intel Fortran compiler. > > I have downloaded the source code for version 4.5.2 and using cmake to > generate the VS-related files. Also, I am linking against netcdf-c 4.7.3 > for which I am using the pre-built binaries (installed on my machine). > > Everything seems fine when building the static library and the > netcdff.lib is being generated without issues. However, having a peek > inside, there are no symbols for the nf90_* procedures. This is confirmed > when trying to use this library in one of my projects (linking errors: > unresolved external symbol nf90_*...). > > Any guidance would be appreciated! > > Aristotelis >
netcdfgroup
archives: