导入Caffe / Scipy错误:liblapack.so.3:未定义符号:sgetrs_N_single

时间:2019-03-28 19:41:26

标签: python scipy caffe lapack

我在Jetson TX1上运行的现有Ubuntu 16.04系统上安装了Caffe。 在我编译并安装OpenBlas之前,它运行良好,然后开始在Python 2中导入caffe时出现此错误。

>>> import caffe

[ Large stack backtrace omitted]

from scipy.linalg import _fblas
ImportError: /usr/lib/liblapack.so.3: undefined symbol: sgetrs_N_single

我可以使用以下命令重新运行:

  

sudo update-alternatives --config liblapack.so.3

,然后在 / usr / lib 中而不是在 / usr / lib / openblas-base 中选择 liblapack.so.3 。< / p>

我宁愿每次安装OpenBlas都不必这样做。我已经用Google搜索了此错误,但没有找到任何解决方案。有人看到吗?

1 个答案:

答案 0 :(得分:1)

在openblas的source中,看起来该符号已在Makfile中用于构建getrs

该库似乎缺少一组底层二进制文件。 sgetrs_N_single是makefile中的第一个,但是我怀疑如果将其删除,sgetrs_T_single接下来会出现相同的错误。当共享库查找此子组件时,找不到它。我怀疑构建过程中出现了一些错误,或者构建说明中缺少步骤。