Почему setuptools 1.3.1 не появляется, когда я зависаю?

Я использую virtualenvwrapper и друзей на Ubuntu 12.04 (virtualenvwrapper 1.7.1.2, virtualenv 1.7.1.2, pip 1.0, Distribute 0.6.24, Python 2.7). Чтобы иметь возможность pip install matplotlib мне нужна более новая версия Distribute/setuptools, поэтому я делаю следующее:

$ mkvirtualenv new_venv
$ pip install matplotlib # fails
$ easy_install -U distribute
# installs Distribute 0.7.3 in the venv,
# which then installs setuptools 1.3.1
$ pip install matplotlib # works

Однако, когда я запускаю pip freeze, я получаю:

argparse==1.2.1
distribute==0.7.3 # here's Distribute
matplotlib==1.3.1
nose==1.3.0
numpy==1.8.0
pyparsing==2.0.1
python-dateutil==2.2
six==1.4.1
tornado==3.1.1
wsgiref==0.1.2

Где setuptools? Я пробовал только pip install setuptools, и он тоже не появляется там.


person lofidevops    schedule 07.11.2013    source источник


Ответы (2)


pip не будет перечислять пакеты, от которых зависит сам pip, если вы не скажете ему об этом. Вы можете включить такие пакеты, выполнив: pip freeze --all

freeze перечисляет пакеты в формате требований — для использования в файлах требований и т. д. — в то время как list — это просто список.

Дополнительные сведения см. в разделе замораживание пунктов и список пунктов.

person ElToro1966    schedule 21.06.2018
comment
pip freeze --all теперь работал с версией pip 7.0.1 на python 2.7. Я использовал pip list, и это сработало - person vlad-ardelean; 15.01.2020

В Ubuntu setuptools устанавливается системным менеджером пакетов. Поэтому его нет в списке, когда вы pip freeze. При создании virtualenv вы получите эти сообщения

mkvirtualenv test
New python executable in test/bin/python
Installing setuptools, pip...done.

Если вы сделаете pip freeze сразу после этого, вы получите что-то вроде этого

argparse==1.2.1
wsgiref==0.1.2

Здесь setuptools и pip не будут указаны.

Если вы хотите все, вы можете сделать pip list, что дает что-то вроде этого.

argparse (1.2.1)
pip (1.5.6)
setuptools (3.6)
wsgiref (0.1.2)
person ChillarAnand    schedule 18.10.2014
comment
В чем разница между freeze и list? - person nu everest; 01.02.2016