1. cmake编译最后会一些编译选项不能识别 -show -shlib
2.configure编译可以识别以上选项, 另外还需要一个 --enable-cxx .
最后需要注意cmake 3.22.1 可能还有bug.
2.1 _HDF5_invoke_compiler 报 Unable to determine HDF5 C flags from HDF5 wrapper.
可能是步骤1 导致的.
2.2 _HDF5_parse_compile_line 报(missing:HDF5_INCLUDE_DIRS), 这是参数有问题,应该修改为compile_line_var include_paths_var definitions_var
library_paths_var libraries_var libraries_hl_var
2.3 把762行_HDF5_NEED_TO_SEARCH前面的NOT去掉应该就可以了. 这里不清楚修改的对不对, 反正能用
cmake 3.24.1 又报如下错
CMake Error at F:/program/cmake/share/cmake-3.24/Modules/FindPackageHandleStandardArgs.cmake:230 (message):
Could NOT find HDF5 (missing: HDF5_INCLUDE_DIRS) (found version "1.12.2")
Call Stack (most recent call first):
F:/program/cmake/share/cmake-3.24/Modules/FindPackageHandleStandardArgs.cmake:594 (_FPHSA_FAILURE_MESSAGE)
F:/program/cmake/share/cmake-3.24/Modules/FindHDF5.cmake:1018 (find_package_handle_standard_args)
cmake/Dependencies.cmake:46 (find_package)
CMakeLists.txt:47 (include)
option (HDF5_BUILD_CPP_LIB "Build HDF5 C++ Library" ON)
set(HDF5_FIND_DEBUG ON)