Не удалось найти версию, которая удовлетворяет требованию



я устанавливаю несколько пакетов Python в Ubuntu 12.04, используя следующие requirements.txt file:



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>


а затем запустить второй

11098   5  

5 ответов:

этот подход (имея все зависимости в каталоге и не загружая из индекса) работает только тогда, когда каталог содержит все пакеты. Поэтому каталог должен содержать все зависимости, но также и все пакеты, от которых зависят эти зависимости (например,six,pytz etc).

поэтому вы должны вручную включить их в requirements.txt (Так что первый шаг загружает их явно) или вы должны установить все пакеты с помощью PyPI, а затем pip freeze > requirements.txt сохранить список всех необходимых пакетов.

попробуйте установить flask через powershell, используя следующую команду.

>>pip install --isolated Flask

Это позволит избежать установки переменных окружения и конфигурации пользователя.

после 2 часов поисков, я нашел способ исправить это с помощью всего одной линии команды. Вам нужно знать версию пакета (просто найдите версию пакета).

:
python3 -m pip install --pre --upgrade PACKAGE==VERSION.VERSION.VERSION

Не всегда, но в некоторых случаях пакет уже существует. Например - getpass. Он не указан в "pip list", но его можно импортировать и использовать:

enter image description here

Если я пытаюсь pip установить getpass я получаю следующее сообщение об ошибке: "Не удалось найти версию, удовлетворяющую требованию getpass"

может поможет

sudo pip установить колесо==0.29.0

Comments

    Ничего не найдено.