make:没有规则来制作目标`/usr/local/lib/libsuperlu.so'

时间:2018-05-08 06:36:48

标签: makefile armadillo

我尝试输入“make”来生成运行时的armadillo库,同时安装armadillo-8.500.0,它总是显示

***No rule to make target '/usr/local/lib/libsuperlu.so', 
needed by 'libarmadillo.so.8.500.0'.Stop.
***[CMakeFiles/armadillo.dir/all] Error 2
make:***[all]Error 2

我尝试在互联网上应用了几个解决方案,但所有这些解决方案都不适用于我的问题。有人说libsuperlu.so在/ usr / local / lib中不存在,但它已经显示

--Looking for SuperLU version 5 
--Found SuperLU:/usr/local/lib/libsuperlu.so
--SuperLU_FOUND=YES
--SuperLU_INCLUDE_DIR=/usr/local/include

在运行“cmake”之后。

我试过

$stat /usr/local/lib/libsuperlu.so

显示

File:'/usr/local/lib/libsuperlu.so'->'libsuperlu.so.5'

如何解决问题? 非常感谢。

1 个答案:

答案 0 :(得分:0)

我想通了,现有的链接“libsuperlu.so”已经破了。 检查“libsuperlu.so”的属性后,发现它已损坏。然后我删除旧的'so'文件,重新链接它。它奏效了。