我能够在我的计算机中使用HDF5完美地编译代码,但现在我想在服务器中编译它。
在服务器中,HDF5安装在以下路径中:
/usr/local/HDF_Group/HDF5/1.8.17/lib /
但是在使用CMake进行编译时出现了这个错误:
CMake错误 /usr/local/share/cmake-3.6/Modules/FindPackageHandleStandardArgs.cmake:148 (消息):找不到HDF5(缺少:HDF5_LIBRARIES HDF5_INCLUDE_DIRS HDF5_HL_LIBRARIES)呼叫堆栈(最近一次呼叫 在前):
/usr/local/share/cmake-3.6/Modules/FindPackageHandleStandardArgs.cmake:388 (_FPHSA_FAILURE_MESSAGE)
/usr/local/share/cmake-3.6/Modules/FindHDF5.cmake:690 (find_package_handle_standard_args)CMakeLists.txt:4(FIND_PACKAGE)- 配置不完整,发生错误!
我的CMakeList.txt的开头
FIND_PACKAGE(HDF5 REQUIRED)
find_package (HDF5 NAMES hdf5 COMPONENTS C static)
INCLUDE_DIRECTORIES
(${HDF5_INCLUDE_DIR}) message(STATUS ${HDF5_INCLUDE_DIR})
set (LINK_LIBS ${LINK_LIBS} ${HDF5_C_STATIC_LIBRARY})
include_directories(/usr/local/HDF_Group/)
link_directories(/usr/local/HDF_Group/HDF5/1.8.17/lib/)
link_directories(/usr/local/lib)
你能帮我吗?因为我对CMake不太熟悉,也许我没有把它正确联系起来......
提前感谢,
编辑:已解决
我通过这样做解决了我的问题:
export HDF5_DIR=/usr/local/HDF_Group/HDF5/1.8.17/share/cmake
我将它添加到我的/home/user/.bashrc中,这样我每次都不必执行此命令行。