Невозможно удалить Python / Pip на Raspberry Pi 3 B + - PullRequest
1 голос
/ 08 марта 2019

Я работаю над Raspberry Pi 3B +.Я хочу обновить питона с 2,7 до 3,6.

Я скачал извлеченный Python 3.6 и сделал его, однако он был установлен в /usr/local/bin.

Я попытался сделать это снова на этот раз, указав префикс ./configure --prefix=/usr, однако make выдал ошибку трассировки.

Я также попробовал update-alternatives --install /usr/bin/python python /usr/bin/python3.6 2, который помогает в смене версий Python.

Однако после этого мой пункт не работает.У меня есть следующие файлы в /usr/local/bin:pip,pip2.7,pip3,pip3.5,pip3.6.

Я попытался удалить pip, чтобы переустановить его, используя sudo apt-get remove python-pip, но он выдает следующую ошибку:

pi@raspberrypi:/usr/local/bin $ sudo apt-get remove python-pip
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages were automatically installed and are no longer required:
  libpython-all-dev python-all python-all-dev python-keyring
  python-keyrings.alt python-secretstorage python-wheel
Use 'sudo apt autoremove' to remove them.
The following packages will be REMOVED:
  python-pip
0 upgraded, 0 newly installed, 1 to remove and 6 not upgraded.
1 not fully installed or removed.
After this operation, 671 kB disk space will be freed.
Do you want to continue? [Y/n] y
Traceback (most recent call last):
  File "/usr/bin/apt-listchanges", line 29, in <module>
    import apt_pkg
ModuleNotFoundError: No module named 'apt_pkg'
(Reading database ... 138007 files and directories currently installed.)
Removing python-pip (9.0.1-2+rpt2) ...
  File "/usr/bin/pyclean", line 63
    except (IOError, OSError), e:
                             ^
SyntaxError: invalid syntax
dpkg: error processing package python-pip (--remove):
 subprocess installed pre-removal script returned error exit status 1
Traceback (most recent call last):
  File "/usr/bin/pycompile", line 35, in <module>
    from debpython.version import SUPPORTED, debsorted, vrepr, \
  File "/usr/share/python/debpython/version.py", line 24, in <module>
    from ConfigParser import SafeConfigParser
ModuleNotFoundError: No module named 'ConfigParser'
dpkg: error while cleaning up:
 subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
 python-pip
E: Sub-process /usr/bin/dpkg returned an error code (1)

, что говорит о том, что apt_pkg(или какая-то проблема с apt-get).когда я делаю pip --version, я получаю:

Traceback (most recent call last):
  File "/usr/local/bin/pip", line 6, in <module>
    from pkg_resources import load_entry_point
ModuleNotFoundError: No module named 'pkg_resources'

Я просто хочу иметь Python 3.6 и 2.7 (так как я уже установил библиотеки на 2.7) с функциональным pip.

Ответы [ 2 ]

0 голосов
/ 28 марта 2019

Я думаю, вы не знаете, что большинство дистрибутивов Linux поставляются с python2 и python3.Набрав python и pip, вы будете использовать свои операционные системы python2 и pip2 версии.Вы, вероятно, захотите использовать python3 и pip3.

Что-то вроде «обновления» с python2 до python3 невозможно, потому что это принципиальное различие, и они несовместимы.Вот почему вы оба установили.

Удаление или обновление системного интерпретатора Python - ужасная плохая идея, потому что они нужны вашей системе.Для профессионального использования вам следует снова подумать о контроле версий, но для ваших первых (и вторых) шагов в python вполне нормально использовать предустановленный интерпретатор python вашей ОС.Такие решения, как pyenv или virtualenv, являются очень мощными инструментами, но вы, вероятно, не хотите начинать с них.

0 голосов
/ 08 марта 2019

Почему бы вам не установить Miniconda для ARM и не получить Python и все важные пакеты сразу?

wget http://repo.continuum.io/miniconda/Miniconda3-latest-Linux-armv7l.sh
sudo md5sum Miniconda3-latest-Linux-armv7l.sh
sudo /bin/bash Miniconda3-latest-Linux-armv7l.sh
sudo reboot -h now
...