由于在Ubuntu下的NumPy Fortran mixup,Theano失败了

前端之家收集整理的这篇文章主要介绍了由于在Ubuntu下的NumPy Fortran mixup,Theano失败了前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在我的机器上安装了 Theano,但是nosetests破坏了Numpy / Fortran相关的错误消息.对于我而言,Numpy看起来像使用与Theano不同的Fortran版本.我已经重新安装了Theano(sudo pip uninstall theano sudo pip install –upgrade –no-deps theano)和Numpy / Scipy(apt-get install –reinstall python-numpy python-scipy),但这没有帮助.

你会推荐什么步骤?

完整的错误信息:

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'

我的研究:

关于未定义符号的Installing SciPy / BuildingGeneral页面:_gfortran_st_write_done’错误

如果您看到错误信息

ImportError:/usr/lib/atlas/libblas.so.3gf:未定义符号:_gfortran_st_write_done

当构建SciPy时,这意味着NumPy在构建过程中(例如ifort)会收到错误的Fortran编译器.

重新编译NumPy使用:

python setup.py build –fcompiler = gnu95

或者适当的(参见python setup.py build –help-fcompiler).

但:

Nick@some-serv2:/usr/local/lib/python2.6/dist-packages/numpy$python setup.py build --help-fcompiler
This is the wrong setup.py file to run

二手软件版本:

> scipy 0.10.1(scipy.test())
NumPy 1.6.2(numpy.test())
> theano 0.5.0(几个测试失败,未定义符号:_gfortran_st_write_done’)
> python 2.6.6
> Ubuntu 10.10

[UPDATE]

所以我从我的系统中删除了numpy和scipy,使用apt-get remove,并使用find -name XXX删除了剩下的内容.

比起来,我使用sudo python setpy.py install从github源安装了numpy和scipy.

之后我再次输入sudo pip卸载theano和sudo pip install –upgrade –no-deps theano.

错误仍然存​​在:/

我也尝试过apt-get source … apt-get build-dep …方法,但对于我的旧Ubuntu(10.10),它为theano安装了旧版本的numpy和scipy:ValueError:numpy> = 1.4是必需(从/usr/local/lib/python2.6/dist-packages/numpy/__init__.pyc检测到1.3.0)

我有同样的问题,并且在审查了源代码后,user212658的回答似乎是会工作的(我没有尝试过).然后,我寻找一种部署user212658的黑客而不修改代码方法.

将这些行放在您的theanorc文件中:

[blas]
ldflags = -lblas -lgfortran

这对我有用

原文链接:https://www.f2er.com/ubuntu/349122.html

猜你在找的Ubuntu相关文章