netcdf源码在windows上的编译
Posted clever101
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了netcdf源码在windows上的编译相关的知识,希望对你有一定的参考价值。
作者:朱金灿
来源:http://blog.csdn.net/clever101
今天搞搞netcdf源码在windows上的编译,折腾了半天,算是搞成了,特地记录一下过程。我的目标是要生成netcdf的工程文件。netcdf依赖于hdf5、zlib和curl这三个库。
首先在HDF5 Source Code下载最新的hdf5源码,然后使用CMake来生成编译hdf5的解决方案,如下图:
再下载netcdf的源码:NetCDF Downloads,开始使用CMake来生成netcdf的解决方案,如下图:
单击configure按钮后出现错误:
CMake Error at CMakeLists.txt:525(FIND_PACKAGE):
Could not find a package configuration file provided by "HDF5"with any of
thefollowing names:
HDF5Config.cmake
hdf5-config.cmake
这时需要配置hdf5的cmake的路径,具体如下图:
然后再配置zlib的路径,找到netcdf-4.4.0\\cmake\\modules\\FindZLIB.cmake,修改其中的
FIND_PATH(ZLIB_INCLUDE_DIR zlib.h
"E:\\\\ThirdPartyBuild\\\\zlib-1.2.8" # 指定zlib.h的路径
PATHS
$ENV{ZLIB_ROOT}
PATH_SUFFIXES
include
)
SET(ZLIB_NAMES z zlib zdll zlib1 zlibdzlibd1)
FIND_LIBRARY(ZLIB_LIBRARY
NAMES
${ZLIB_NAMES}
PATHS
"E:\\\\ThirdPartyBuild\\\\zlib-1.2.8\\\\vs\\\\Release"# 指定zlib的库文件的路径
$ENV{ZLIB_ROOT}
PATH_SUFFIXES
lib
)
去除netcdf-4.4.0\\CMakeLists.txt关于curl库的设置(为什么要去掉?因为我找了半天,没有找到设置curl库的cmake文件),具体是
# IF(NOT CURL_LIBRARY)
# MESSAGE(FATAL_ERROR "DAP Support specified, CURL libraries are notfound.")
# ENDIF()
和
# add_subdirectory(liblib)
两处注释掉。
然后单击Configure和Generate两个按钮就可以生成netCDF的工程文件了。生成的netCDF.sln下面的工程netcdf3和netcdf4是编译netcdf库的工程文件。
以上是关于netcdf源码在windows上的编译的主要内容,如果未能解决你的问题,请参考以下文章
在 Windows 上将 NetCDF 转换为 HDF5 的最简单方法是啥
每年绘制 X 轴上的月份和来自 NetCDF 的 Y 轴上的变量
尝试在 Windows 8 上安装 netCDF4 时出现“需要 Python 版本 2.7,在注册表中找不到”错误
在 Visual Studio 上的 C++ 项目中将 NetCDF(通过 vcpkg 安装)与 CMake 一起使用时未解析的外部符号