Плохая ошибка интерпретатора при попытке установить пакеты в Anaconda


Я пытаюсь установить neo в свой дистрибутив Anaconda с помощью

conda install -c https://conda.binstar.org/neuroinf neo

(взято из здесь ), но получаю ошибку:

bash: /transform/anaconda/bin/conda: /usr/local/anaconda/bin/python: bad interpreter: No such file or directory

Он не находит /usr/local/anaconda/bin/python, потому что его не существует. У меня есть анаконда, установленная в /transform/anaconda/. Я отредактировал свой .bashrc файл, чтобы отразить это, но по какой-то причине он все еще ищет в /usr/local/ (по крайней мере, в некотором смысле, обратите внимание, что он правильно ищет в /transform/ для первого аргумента каталога). Что мне нужно изменить чтобы заставить его заглянуть в /transform/anaconda/bin/python?

echo $PATH возвращает:

/transform/anaconda/bin:/usr/bin:/transform/anaconda/bin:/usr/bin:/transform/anaconda/bin:/usr/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/PHShome/gcw8/bin

(я понимаю, что это грязно, я уберу его, когда у меня будет минута)

Я запускаю CentOS и python 2.7.

2 2

2 ответа:

/transform/anaconda/bin/conda ожидает, что исполняемый файл Python будет находиться в /usr/local/anaconda/bin/python, поскольку это то, что находится в его строке shebang, но вы установили его в другом месте, а именно /transform/anaconda/bin/python. Вам нужно будет изменить линию shebang, чтобы указать правильное местоположение.

Вы перенесли свою установку Anaconda? Это не поддерживается именно по этой причине.

После изменения shebang для исправления Anaconda вам может потребоваться использовать conda для удаления и переустановки любого другого пакета, который имеет линии shebang или другие жестко закодированные пути для их исправления.