Theano falha devido a mixagem NumPy Fortran no Ubuntu
Eu instaleiTheano na minha máquina, mas os nosetests quebram com uma mensagem de erro relacionada a Numpy / Fortran. Para mim, parece que o Numpy foi compilado com uma versão diferente do Fortran do que o Theano. Eu já reinstalei o Theano (sudo pip uninstall theano
+ sudo pip install --upgrade --no-deps theano
) e Numpy / Scipy (apt-get install --reinstall python-numpy python-scipy
), mas isso não ajudou.
Quais etapas você recomendaria?
Mensagem de erro completa: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'
Minha pesquisa:oInstalando o SciPy / BuildingGeneral página sobre oundefined symbol: _gfortran_st_write_done'
erro:
Se você vir uma mensagem de erro
ImportError: /usr/lib/atlas/libblas.so.3gf: undefined symbol: _gfortran_st_write_done
Ao construir o SciPy, significa que o NumPy pegou o compilador Fortran errado durante a construção (por exemplo, ifort).
Recompile o NumPy usando:
python setup.py build --fcompiler=gnu95
ou o que for apropriado (verpython setup.py build --help-fcompiler
).
Mas:
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
Versões de software usadas:scipy 0.10.1 (scipy.test () funciona)NumPy 1.6.2 (numpy.test () funciona)theano 0.5.0 (vários testes falham comundefined symbol: _gfortran_st_write_done'
)python 2.6.6Ubuntu 10.10[ATUALIZAR]Então eu removi o numpy e scipy do meu sistema comapt-get remove
e usandofind -name XXX -delete
do que sobrou.
Do que eu instalei numpy e scipy das fontes github comsudo python setpy.py install
.
Depois eu entrei de novosudo pip uninstall theano
esudo pip install --upgrade --no-deps theano
.
Erro persistente: /
Eu também tentei oapt-get source
... +apt-get build-dep ...
abordagem, mas para o meu antigo Ubuntu (10.10) instala versão muito antiga de numpy e scipy para theano:ValueError: numpy >= 1.4 is required (detected 1.3.0 from /usr/local/lib/python2.6/dist-packages/numpy/__init__.pyc)