Я только что установил Ubuntu 16.04 LTS в новой системе.
Я должен выполнить некоторый материал Python 2 на нем.
Таким образом, я сделал следующее:
$ pip2
The program 'pip2' is currently not installed. You can install it by typing:
sudo apt install python-pip
$ sudo apt-get install python-pip
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
libexpat1-dev libpython-all-dev libpython-dev libpython2.7 libpython2.7-dev python-all python-all-dev python-dev python-pip-whl python-setuptools
python-wheel python2.7-dev
Suggested packages:
python-setuptools-doc
The following NEW packages will be installed:
libexpat1-dev libpython-all-dev libpython-dev libpython2.7 libpython2.7-dev python-all python-all-dev python-dev python-pip python-pip-whl
python-setuptools python-wheel python2.7-dev
0 upgraded, 13 newly installed, 0 to remove and 0 not upgraded.
Need to get 30.7 MB of archives.
After this operation, 48.3 MB of additional disk space will be used.
Do you want to continue? [Y/n] y
...
И затем я начал использовать pip2
:
$ which pip2
/usr/bin/pip2
$ pip2 install --user jsonmerge
...
и затем это перестало работать:
$ pip2 install --user zipp
/home/xenial/.local/lib/python2.7/site-packages/pkg_resources/py2_warn.py:22: UserWarning: Setuptools will stop working on Python 2
************************************************************
You are running Setuptools on Python 2, which is no longer
supported and
>>> SETUPTOOLS WILL STOP WORKING <<<
in a subsequent release (no sooner than 2020-04-20).
Please ensure you are installing
Setuptools using pip 9.x or later or pin to `setuptools<45`
in your environment.
If you have done those things and are still encountering
this message, please comment in
https://github.com/pypa/setuptools/issues/1458
about the steps that led to this unsupported combination.
************************************************************
sys.version_info < (3,) and warnings.warn(pre + "*" * 60 + msg + "*" * 60)
Collecting zipp
Installing collected packages: zipp
Exception:
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/pip/basecommand.py", line 209, in main
status = self.run(options, args)
File "/usr/lib/python2.7/dist-packages/pip/commands/install.py", line 335, in run
prefix=options.prefix_path,
File "/usr/lib/python2.7/dist-packages/pip/req/req_set.py", line 732, in install
**kwargs
File "/usr/lib/python2.7/dist-packages/pip/req/req_install.py", line 837, in install
self.move_wheel_files(self.source_dir, root=root, prefix=prefix)
File "/usr/lib/python2.7/dist-packages/pip/req/req_install.py", line 1039, in move_wheel_files
isolated=self.isolated,
File "/usr/lib/python2.7/dist-packages/pip/wheel.py", line 346, in move_wheel_files
assert info_dir, "%s .dist-info directory not found" % req
AssertionError: zipp .dist-info directory not found
You are using pip version 8.1.1, however version 20.0.2 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
(пакеты PyPi выше даны как примеры, я видел эту проблему в системах с другими пакетами от PyPi).
Как я должен решить эту проблему корректным способом?
Мы должны следовать рекомендации в последних двух строках вывода:
Вы используете версию 8.1.1 зернышка, однако версия 20.0.2 доступна.
Необходимо рассмотреть обновление через 'установку зернышка - команда' зернышка обновления.
Таким образом, мы должны работать
pip2 install --upgrade --user pip
и затем выйдите из системы и войдите в систему назад, затем следуйте другой рекомендации:
Setuptools с помощью зернышка 9.x или позже или контакт к
setuptools<45
в Вашей среде.
pip2 install --user "setuptools<45"
После этой любой установки pip2
- пакеты приведут к следующему сообщению:
ДЕПРЕКАЦИЯ: Python 2.7 достиг конца своей жизни 1-го января 2020. Обновите свой Python, поскольку Python 2.7 больше не сохраняется. Будущая версия зернышка отбросит поддержку Python 2.7. Больше деталей о поддержке Python 2 в зернышке, может быть найден в https://pip.pypa.io/en/latest/development/release-process/#python-2-support