在我的RHEL7上,我正在尝试安装py-earth并收到此链接错误:
/usr/bin/ld: cannot find -lcblas
我安装了blas,blas-devel,atlas和atlas-devel软件包。
此错误后打印的编译命令指定
-L/usr/lib64/atlas -lcblas -lm ....
为了完整起见,目录/usr/lib64/atlas
包含以下文件和符号链接
libsatlas.so -> libsatlas.so.3.10
libsatlas.so.3 -> libsatlas.so.3.10
libsatlas.so.3.10
libtatlas.so -> libtatlas.so.3.10
libtatlas.so.3 -> libtatlas.so.3.10
libtatlas.so.3.10
任何帮助?
答案 0 :(得分:6)
这似乎是sklearn的一个问题,而不是理解atlas软件包现在是一个共享的.so文件,而不是多个文件。您可以在github issue找到问题。
我的解决方案是最后提供的解决方案:只需创建一个链接:
ln -s /usr/lib64/atlas/libsatlas.so /usr/lib64/atlas/libcblas.so
再试一次。
答案 1 :(得分:0)
正如Ian Roddis所说,这是scikit-learn中的一个错误。
Linux的另一个解决方法是将 pip 升级到版本> = 8.1 。然后pip可以安装“many-linux”二进制轮而不是编译scikit-learn from source。 (二进制轮没有这个问题)