Communication error with cblas when installing scikit-learn

On my RHEL7, I am trying to install py-earth and get this link error:

/usr/bin/ld: cannot find -lcblas 

I have blas, blas-devel, atlas and atlas-devell packages.

The compilation command printed after this error indicates

 -L/usr/lib64/atlas -lcblas -lm .... 

And for completeness, the /usr/lib64/atlas directory contains the following files and symbolic links

 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 

Any help?

+5
source share
2 answers

This seems like a problem with sklearn, not realizing that the atlas package now ships as a common .so file instead of several. You can see this problem on github .

My solution was the last one: just create a link:

 ln -s /usr/lib64/atlas/libsatlas.so /usr/lib64/atlas/libcblas.so 

and try again.

+6
source

As Jan Roddis noted, this is a mistake in scikit-learn.

Another workaround for Linux is to upgrade pip to version = 8.1 . Pip can then install the many-linux binary wheel instead of compiling scikit-learn from the source. (The binary wheel does not have this problem)

0
source

Source: https://habr.com/ru/post/1235216/


All Articles