正确卸载 Atlas

正确卸载 Atlas

如果您遇到包含“gfortran”的错误,如下所示:

ImportError: (‘/home/Nick/.theano/compiledir_Linux-2.6.35-31-generic-x86_64-with-Ubuntu-10.10-maverick–2.6.6/tmpIhWJaI/0c99c52c82f7ddc775109a06ca04b360.so: undefined symbol: _gfortran_st_write_done’

嗨,我正在按照给定的步骤操作。问题可能是 NumPy 与不同的 blas 链接,然后是当前可用的 blas(可能是 ATLAS)。有 2 个可能的修复方法:

Uninstall ATLAS and install OpenBLAS.
Use the Theano flag “blas.ldflags=-lblas -lgfortran”

1) 更好,因为 OpenBLAS 比 ATLAS 更快,而且 NumPy 可能已经与它链接。因此您不需要对 Theano 文件或 Theano 配置进行任何其他更改。

但我不知道如何卸载这个 ATLAS 包。我试过了

 sudo apt-get remove libatlas

但它没有起作用。你能告诉我如何正式删除它们吗?问候

答案1

如果您想删除ATLAS开发包,它们实际上被称为libatlas-devlibatlas-base-dev

但是,无需卸载这些软件包即可使用 OpenBLAS:该update-alternatives机制将为您处理所有事情,当您安装时,会自动为 OpenBLAS 版本的 libblas 分配更高的优先级,例如,如果只安装了 ATLAS 开发包,您应该会看到

$ update-alternatives --get-selections | grep libblas
libblas.so                     auto     /usr/lib/atlas-base/atlas/libblas.so
libblas.so.3                   auto     /usr/lib/atlas-base/atlas/libblas.so.3

然后使用安装 OpenBLAS 开发包

$ sudo apt-get install libopenblas-dev

再检查一下你会看到

$ update-alternatives --get-selections | grep libblas
libblas.so                     auto     /usr/lib/openblas-base/libblas.so
libblas.so.3                   auto     /usr/lib/openblas-base/libblas.so.3

您应该能够使用sudo update-alternatives --config libblas.so并按照屏幕上的说明在它们之间切换。

相关内容