nmj@pc-nm:~$ sudo apt remove python3.5
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies.
debconf : PreDepends: perl-base (>= 5.6.1-4) but it is not going to be installed
Recommends: apt-utils (>= 0.5.1) but it is not going to be installed
Recommends: debconf-i18n but it is not going to be installed
init-system-helpers : Depends: perl-base (>= 5.20.1-3) but it is not going to be installed
libacl1 : Depends: libattr1 (>= 1:2.4.46-8) but it is not going to be installed
libedit2 : Depends: libtinfo5 (>= 6) but it is not going to be installed
libsystemd0 : PreDepends: libgcrypt20 (>= 1.6.1) but it is not going to be installed
libxml2 : Depends: libicu65 (>= 65.1-1~) but it is not going to be installed
libzvbi0 : Depends: libpng12-0 (>= 1.2.13-4) but it is not going to be installed
procps : Depends: libncurses5 (>= 6) but it is not going to be installed
Depends: libncursesw5 (>= 6) but it is not going to be installed
Depends: libprocps4 but it is not going to be installed
Depends: libtinfo5 (>= 6) but it is not going to be installed
Depends: initscripts
psmisc : Depends: libtinfo5 (>= 6) but it is not going to be installed
systemd : PreDepends: libgcrypt20 (>= 1.6.1) but it is not going to be installed
Depends: libaudit1 (>= 1:2.2.1) but it is not going to be installed
Depends: libblkid1 (>= 2.19.1) but it is not going to be installed
Depends: libcryptsetup4 (>= 2:1.4.3) but it is not going to be installed
Depends: libmount1 (>= 2.26.2) but it is not going to be installed
Depends: libpam0g (>= 0.99.7.1) but it is not going to be installed
Depends: util-linux (>= 2.27.1)
Depends: mount (>= 2.26)
Depends: adduser but it is not going to be installed
Recommends: libpam-systemd but it is not going to be installed
Recommends: dbus
ucf : Depends: coreutils (>= 5.91)
E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.
Выше мой журнал ошибок. Я пытаюсь удалить python3.5, чтобы сохранить python3.9, но я продолжаю получать эту ошибку. Мне нужна помощь. ребята Я использую ubuntu 16.04LTS И я пытаюсь работать над проектом django, но pip даже внутри venv продолжает разбирать все свои пакеты в базовый каталог python3.5, и это становится так раздражает, потому что после нескольких часов поиска исправлений я продолжаю сталкиваться с большим количеством ошибок из-за конфликта этой версии.
Тогда для virtualenv: всякий раз, когда я пытаюсь установить django с помощью pip install django
, он не может установить предыдущую версию 2.1.0.
Но мне нужно было установить 3.1.7 {{1 }} У меня есть версия django 3, установленная как root, но в этом конкретном virtualenv я чувствую, что python3.5 запрашивает pip, и все установки просто беспорядочные.
Спасибо
Я нашел исправление для этого. Очень просто создать virtualenv, зависящие от версии
Как?
virtualenv venv --python=python3.9
из приведенного выше python 3.9 будет только версия в нем
source venv/bin/activate
Теперь подтвердите свою зону, свободную от конфликтов, следующим:
pip --version
pip3 --version
2 результата в 1 ответе
python --version
python3 --version
python3.9 --version
3 вышеупомянутых результата приведут к 1 ответу.
Теперь для установки из pip достаточно выполнить pip install ...
pip --freeze
покажет вам все требования внутри venv в qn
Надеюсь, это поможет кто-то там.
Ваша проблема не совсем понятна из вашего описания. Но у меня есть идея, возможно, она вам поможет.
Сколько версий питона было установлено в вашей системе?
Если вы этого не знаете, попробуйте это,
find /usr /lib* /home -type d \( -name "*site-packages" -or -name "*dist-packages" \)
Идея в том, чтобы найти все папки с дистрибутивом и пакетами Python.
/usr/lib/python2.7/dist-packages
/usr/lib/python3/dist-packages
/home/name/pyenv/versions/3.8.3/lib/python3.8/site-packages
Тогда у вас будет четкое представление о том, какие версии Python были скомпилированы в вашей системе.
Теперь пришло время получить все их pip
s. (некоторых из них может и не быть, если вы не установите их)
find /bin /usr /lib* /home -type f -name "pip*" -executable
Вы можете получить некоторые выходы типа;
/usr/bin/pip3
/usr/bin/pip3.5
/home/NAME/pyenv/shims/pip3
Проверьте их по одному, используя:
PATH-of-PIP --version
e.g.
/usr/bin/pip3 --version
Чтобы узнать, с какими версиями pip
s соединяются эти pip
s.
В вашем случае, так как вы хотите использовать версию python-3.9
, вы можете;
pip-full-path-for-3.9 install django
Для удобства, вы также можете постоянно добавлять ее в ваш файл .bashrc
. Я предлагаю добавить к нему псевдоним
. Или сделать символическую ссылку. Или изменить его название для удобства запоминания, если вы действительно уверены в этом.
echo "alias pip3.9=pip-full-path-for-3.9" >> ~/.bashrc