Не удается обновить Scipy
Я пытаюсь обновить Scipy
от 0.9.0
до 0.12.0
. Я использую команду:
sudo pip install --upgrade scipy
и я получаю всевозможные ошибки, которые можно увидеть в файле pip.log здесь, и я, к сожалению, недостаточно подхожу к python, чтобы понять, что случилось. Любая помощь будет оценена.
Ответы
Ответ 1
Все сообщения об ошибках совпадают: в вашей системе отсутствует BLAS (базовые подпрограммы линейной алгебры), или scipy не может ее найти. При установке пакетов из исходного кода в ubuntu, поскольку вы эффективно пытаетесь сделать с пипсом, одним из самых простых способов убедиться в том, что существуют зависимости, является команда
$ sudo apt-get build-dep python-scipy
который установит все пакеты, необходимые для сборки пакета python-scipy
. В некоторых случаях вы можете столкнуться с проблемой, что версия исходного пакета, который вы пытаетесь установить, имеет разные зависимости, чем версия, включенная в ubuntu, но в вашем случае я думаю, что хорошие шансы на то, что вышеуказанной команды будет достаточно для извлечения BLAS для вас, включая заголовки.
Ответ 2
У меня была такая же проблема при обновлении от scipy 0.9 до 0.13.3, и я решил это, используя следующий answer и установив:
sudo apt-get install libblas-dev
sudo apt-get install liblapack-dev
sudo apt-get install gfortran
Ответ 3
Я нашел инструкции Адама Клейна для того, чтобы настроить scipy (и друзей) в виртуальной среде очень полезно.
Одна проблема, с которой я столкнулся (что, вероятно, было моей собственной ошибкой): после того, как все было сказано и сделано, я обнаружил, что импортировал scipy, еще загруженную версию 0.9.0, а не 0.12.0. Проблема заключалась в том, что мой sys.path
находил старую версию системы перед новой версией.
Исправление заключалось в том, чтобы сделать
/path/to/.virtualenvs/arthur/local/lib/python2.7/site-packages
появится перед
/usr/lib/python2.7/dist-packages
в sys.path
. Если у вас установлено virtualenvwrapper, тогда
вы можете добавить путь, используя
add2virtualenv /path/to/.virtualenvs/arthur/lib/python2.7/site-packages
Ответ 4
Убедитесь, что установлены libatlas-base-dev и libatlas-sse2-dev, похоже, что он не может найти вашу библиотеку атласа. Также см. Этот вопрос:
Требуется ли Python SciPy BLAS?