c ++ makefile找不到hdf5的共享库

c++ makefile not finding shared library for hdf5

我正在 Kubuntu 上编译一个将使用 hdf5 库的 c++ 程序。我已经使用

安装了 hdf5 库
sudo apt-get install libhdf5-7
sudo apt-get install libhdf5-cpp-7

但是当我 运行 我得到程序的 makefile 时

make[2]: *** No rule to make target '/usr/local/lib/libhdf5.so', needed by 'src/libHDF5Wrapper.so'.  Stop.

确实在 /usr/lib 中查找没有 libhdf5* 文件。我在安装 hdf5 时是否遗漏了什么?

为了结束这个问题,我在这个答案中加入了我的评论:

库在 Ubuntu 上的正确位置可以使用 online file list of the respective package 或通过以下方式找到:

ldconfig -p | grep libhdf5.so

对我来说 returns:

libhdf5.so (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libhdf5.so

您的 makefile 似乎错误地将库的位置假定为 /usr/local/lib,因此您需要调整 makefile 以匹配计算机上的实际安装位​​置。