Я устанавливаю несколько пакетов Python в Ubuntu 12.04, используя следующий requirements.txtфайл:
numpy>=1.8.2,<2.0.0
matplotlib>=1.3.1,<2.0.0
scipy>=0.14.0,<1.0.0
astroML>=0.2,<1.0
scikit-learn>=0.14.1,<1.0.0
rpy2>=2.4.3,<3.0.0
и эти две команды:
$ pip install --download=/tmp -r requirements.txt
$ pip install --user --no-index --find-links=/tmp -r requirements.txt
(первый загружает пакеты, а второй устанавливает их).
Часто процесс останавливается с ошибкой:
Could not find a version that satisfies the requirement <package> (from matplotlib<2.0.0,>=1.3.1->-r requirements.txt (line 2)) (from versions: )
No matching distribution found for <package> (from matplotlib<2.0.0,>=1.3.1->-r requirements.txt (line 2))
который я исправляю вручную:
pip install --user <package>
а затем снова запустите вторую pip installкоманду.
Но это работает только для этого конкретного пакета. Когда я pip installснова запускаю вторую команду, процесс останавливается и жалуется на другой требуемый пакет, и мне нужно повторить процесс снова, то есть: установить новый требуемый пакет вручную (с помощью команды выше), а затем запустить вторую pip installкоманду.
До сих пор я должен был установить вручную six, pytz, noseи теперь он жалуется нуждаясь mock.
Есть ли способ указать pipавтоматическую установку всех необходимых зависимостей, чтобы мне не приходилось делать это вручную одну за другой?
Добавить : это происходит только в Ubuntu 12.04 BTW. В Ubuntu 14.04 pip installкоманды, примененные к requirements.txtфайлу, работают без проблем.
