Cannot find NeTCDF

I am trying to do an installation and failing. I installed all packages including netcdf on my fedora machine. I installed with the command sudo install netcdf then when I do the command sudo dnf repoquery -l netcdf I can see all files installed. I did similar installs of all other libraries except MPI as I am doing an non MPI installation. I then tried to make with command
cmake /home/gaw/Turbulence/channelflow-master -DCMAKE_BUILD_TYPE=debug -DUSE_MPI=off

It proceeded to build until it came to netcdf with the feedback

– configuring channelflow version 2.0.2
– Using GNU compiler options

– Starting system introspection
– Found FFTW
– FFTW_LIBRARY=/usr/lib64/libfftw3.so
– FFTW_OMP_LIBRARY=/lib64/libfftw3_omp.so
– FFTW_MPI_LIBRARY=FFTW_MPI_LIBRARY-NOTFOUND
CMake Warning at cmake/Modules/FindFFTW.cmake:32 (message):
The locations of fftw_mpi and fftw library are not the same. This is
probably something you don’t want!
Call Stack (most recent call first):
CMakeLists.txt:102 (find_package)

– Not using MPI
CMake Error at cmake/Modules/FindPackageHandleStandardArgs.cmake:97 (MESSAGE):
Could NOT find NetCDF (missing: NETCDF_LIBRARIES NETCDF_INCLUDE_DIRS)
Call Stack (most recent call first):
cmake/Modules/FindPackageHandleStandardArgs.cmake:288 (_FPHSA_FAILURE_MESSAGE)
cmake/Modules/FindNetCDF.cmake:117 (find_package_handle_standard_args)
CMakeLists.txt:132 (find_package)

– Configuring incomplete, errors occurred!
See also “/home/gaw/Turbulence/build/CMakeFiles/CMakeOutput.log”.
See also “/home/gaw/Turbulence/build/CMakeFiles/CMakeError.log”.

If somebody could give me some insight into how to complete this installation I would greatly appreciate it.

Andy

I was looking at other posts on installation and found a similar problem so I made netcdf from a
tar file in a directory rather than do a dnf install. When I made netcdf it complained it could not find
curl and z although a quick search for curl shows it in /usr/bin/curl. from suggestions on the make
I made this with the option --disable-dap --disable-netcfd-4 because that is the only way I would
make. I was then able to make channelflow with the path to the netcdf file I had just created
-DCMAKE_PREFIX_PATH="/opt/netcdf/4.7.4" and it would make.

This new code failed to run because it tried to use a feature in netcdf that was turned off.

Any suggestions would be appreciated

I am running on Fedora but is there a flavor of Linux this was written on or written for?

Dear Andy,

welcome to the forum :slight_smile:

We made some efforts to have an easy time to build channelflow on ubuntu and macOS, once the dependencies are installed. However, issues with finding libraries or header files are possible.

I suggest that you run ccmake . in your build directory and then press t to toggle the advanced mode. There you can see all cmake variables and their values. You can specify paths there or via the command line with a -D in front.

Let me know if this works for you.

Best,
Florian

Florian, Thanks for your help. That did the trick and I am up and running. Lots for me to
learn about arguments in the simulation but I will look over he message boards before
I ask questions.

Andy