ModuleNotFoundError: нет модуля с именем apt_pkg после установки python 3.7
Недавно я установил python 3.7 на машину Ubuntu 18.04.4 LTS, используя следующую команду:
Я также выполнил следующую команду, так как хочу, чтобы python 3.7 запускался как python3 :
Впоследствии я последовал предложению запустить это:
И теперь, когда я пытаюсь включить universe репозиторий ( add-apt-repository universe ), Я получаю следующую ошибку:
Большинство ответов, которые я нахожу, говорят мне переустановить python3-apt вроде здесь и здесь, но это не работает.
Что еще можно попробовать?
РЕДАКТИРОВАТЬ:
Здесь и здесь также есть предложения, которые включают конкретное указание на установку dist для python, которая является версией 3.6 для Ubuntu 18.04. Это безопасно? Нельзя ли было когда-нибудь обновить этот питон?
1 ответ
Как оказалось, мое решение было не совсем то, почему apt-pkg модуль не может быть найден, а скорее для понимания того, что можно и чего нельзя делать при установке другой версии python в Ubuntu, чем версия дистрибутива.
В итоге я удалил альтернативу, которую добавил, чтобы указать python3 на python3.7
и вместо этого исправляем символическую ссылку, чтобы снова указывать на исходную версию 3.6, которая распространяется с Ubuntu 18.04
Кроме того, теперь я буду использовать команду python3.7 для всего, для чего мне нужен Python 3.7, который в основном просто создает мой virtualenv, так что это не так уж много хлопот.
Источник
Нет модуля с именем pkg resources
Я развертываю приложение Django на dev-сервере и нажимаю эту ошибку при запуске требований к установке pip.txt:
pkg_resources, похоже, распространяется с помощью setuptools. Первоначально я думал, что это не может быть установлено на python в virtualenv, поэтому я установил setuptools (2.6, ту же версию, что и Python) на сайт Python-пакеты в virtualenv со следующей командой
изменить Это происходит только внутри virtualenv. если я откройте консоль вне virtualenv, тогда pkg_resources присутствует
но я все еще получаю ту же ошибку. Есть идеи, почему pkg_resources не находится на пути?
30 ответов
Обновление Июля 2018
большинство людей теперь должны использовать pip install setuptools (возможно, с sudo ).
некоторым может потребоваться (пере)установить python-setuptools пакет через менеджер пакетов ( apt-get install , yum install , etc.).
эта проблема может сильно зависеть от вашей ОС и среды разработки. См. ответы legacy / other ниже, если вышеизложенное не работает для вас.
объяснение
данное сообщение об ошибке вызвано отсутствующим / сломанным Python setuptools пакета. За комментарий Мэтта М. и проблема setuptools #581, загрузочного скрипта приведено ниже уже не рекомендуемый способ установки.
инструкции сценария начальной загрузки останутся ниже, в случае, если это все еще полезно для кого-либо.
Legacy Ответ
я столкнулся с такой же ImportError сегодня при попытке использовать pip. Каким-то образом setuptools пакет был удален в моей среде Python.
чтобы устранить проблему, запустите сценарий установки для setuptools :
(или если у вас нет wget установлен (например, OS X), попробуйте
возможно sudo добавляется.)
если у вас есть какая-либо версия distribute , или любое setuptools ниже 0.6, вам придется сначала удалить его.*
посмотреть Инструкция По Установке для дальнейшего подробности.
* если у вас уже есть работающий distribute , обновляя его до «оболочки совместимости», которая переключает вас на setuptools легче. Но если что-то уже сломано, не пытайтесь.
исправлено для меня в Debian. Похоже, что удаление некоторых .deb packages (twisted set в моем случае) нарушил путь, используемый python для поиска пакетов
Я видел эту ошибку при попытке установить rhodecode в virtualenv на ubuntu 13.10. Для меня решением было запустить
перед запуском easy_install rhodecode.
Это случилось со мной. Я думаю, что проблема будет, если требования.txt содержит запись «distribute», а virtualenv использует setuptools. Pip попытается исправить setuptools, чтобы освободить место для распространения, но, к сожалению, это не удастся на полпути.
простое решение-удалить текущий virtualenv, а затем создать новый virtualenv с аргументом —distribute.
пример использования virtualenvwrapper:
в CentOS 6 Установка пакета python-setuptools исправлена.
у меня была эта ошибка раньше, и самый высокий рейтинг ответа дал мне ошибку, пытаясь загрузить . Я нашел другой источник, чтобы вы могли запустить команду:
я обнаружил, что мне также пришлось использовать sudo чтобы заставить его работать, поэтому вам может потребоваться запустить:
Я также создал другое место, которое скрипт можно скачать с:
нужно немного больше sudo. Затем используется easy_install для установки pip. Завод.
попробовав несколько из этих ответов, а затем обратившись к коллеге, то, что сработало для меня на Ubuntu 16.04, было:
в моем случае, это была только старая версия 3.1.1 подушки, что были проблемы (подушка 4.x работал нормально), и теперь это решено!
я исправил ошибку с virtualenv, сделав это:
скопировано pkg_resources.py от
это может быть дешевым обходным путем, но это сработало для меня.
если инструментов установки не существует, вы можете попробовать установить system-site-packages, введя virtualenv —system-site-packages /DESTINATION DIRECTORY , изменив последнюю часть на каталог, в который вы хотите установить. pkg_rousources.py будет под этим каталогом в lib / python2.7 / сайт-пакеты
для меня эта ошибка была вызвана тем, что у меня был подкаталог под названием «site»! Я не знаю, является ли это ошибкой pip или нет, но я начал с:
/ некоторые/dir / требования.формат txt / some/dir/site/
pip install-r требования.txt не будет работать, давая мне вышеуказанную ошибку!
переименование подпапки с «сайта» на » src » исправило проблему! Может быть, pip ищет «пакеты сайтов»? Сумасшедший.
у меня была эта проблема, когда я активировал свой virtualenv как другой пользователь, чем тот, кто его создал. Похоже, это проблема с разрешением. Я обнаружил это, когда попробовал ответ @cwc и увидел это в выходных данных:
переключение обратно к пользователю, который создал virtualenv, а затем запуск исходного pip install команда прошла без проблем. Надеюсь, это поможет!
У меня сегодня тоже была эта проблема. У меня проблема только внутри виртуального env.
решение для меня было деактивацией виртуального env, удалением, а затем удалением virtualenv с помощью pip и переустановкой его. После этого я создал новый виртуальный env для своего проекта, затем pip отлично работал как внутри виртуальной среды, так и в обычной среде.
похоже, они отошли от bitbucket и теперь находятся на github (https://github.com/pypa/setuptools)
команда для запуска:
для меня это оказалось проблемой разрешения site-packages . Поскольку это только моя среда разработки, я поднял разрешения, и все снова работает:
по-видимому, вам не хватает setuptools. Некоторые версии virtualenv по умолчанию используют distribute вместо setuptools. Используйте —setuptools опция при создании virtualenv или установить VIRTUALENV_SETUPTOOLS=1 в вашей среде.
я наткнулся на этот ответ, когда я пытался следовать это руководство для OSX. То, что сработало для меня, было после запуска python get-pip , Мне тоже пришлось easy_install pip . Это исправило проблему невозможности запуска pip вообще. Я!—5—>сделал есть куча старых вещей macport установлен. Возможно, это противоречило друг другу.
в windows я установил pip, загруженный из www.lfd.uci.edu /
gohlke / pythonlibs/ затем encontered эта проблема.
поэтому я должен был сначала установить setuptools(easy_install).
просто переустановить setuptools by:
тогда все будет нормально.
Я использую CentOS 6.7, и мой python был просто обновлен с 2.6.6 до 2.7.11, после того, как попробовал так много разных ответов, наконец, следующий делает работу:
надеюсь помочь кому-то в такой же ситуации.
ни один из опубликованных ответов работал для меня, поэтому я переустановил pip и это сработало!
я столкнулся с этой проблемой после обновления с Ubuntu строить. Похоже, что он прошел и удалил Инструменты Настройки во всех моих виртуальных средах.
чтобы исправить это, я переустановил виртуальную среду обратно в целевой каталог. Это очистило отсутствующие Инструменты Настройки и снова запустило вещи.
для меня хорошим решением было использовать —no-download опция virtualenv ( VIRTUALENV_NO_DOWNLOAD=1 tox на токс.)
на Opensuse 42.1 исправлена следующая проблема:
ImportError: нет модуля с именем pkg_resources: решение состоит в том, чтобы переустановить python pip, используя следующую команду.
Шаг 1 войти в пользователя root.
Шаг 2 удалите пакет python-pip, если он существует.
Шаг 3 загрузка файлов с помощью команды wget(загрузка файла в pwd )
Шаг 4 запустить python файл.
Шаг: 5 Finaly exicute команда установки.
Примечание: пользователь должен быть root.
Я испытал эту ошибку в своей среде Google App Engine. И pip install -t lib setuptools Исправлена проблема.
следующее решение, предложенное Tukadiya Ramesh, работало для меня, однако я хочу отметить, что вы должны использовать правильные двоичные файлы/инструменты, соответствующие вашей среде, как для меня у python3.6 (python 3) установлено:
ImportError: нет модуля с именем pkg_resources: решение заключается в переустановке python pip с помощью следующей команды.
Шаг: 1 Войдите в пользователя root.
Шаг: 2 Удаление пакет python — pip, если он существует.
apt-get purge-y python-pip (используйте python3-pip, если ошибка указывает на../питон3/..)
Шаг: 3 Загрузка файлов с помощью команды wget (загрузка файлов в pwd )
wget https://bootstrap.pypa.io/get-pip.py (доступна версия 3.2, используйте ее в соответствии с вашим env)
Шаг: 4 запустите файл python.
python ./get-pip.py (если ошибка связана с Python 3, то вы хотите использовать питон3 или python3.6 и т. д. [согласно вашему env.])
Шаг: 5 Finaly выполнить команду установки.
apt-get install python-pip (опять же, используйте python3-pip как в шаге 2)
Примечание: пользователь должен быть root.
P.S. Эта проблема решена с моим update-manager в Ubuntu 16. Он продолжал сбой с ошибками, связанными с импортом Python. Если у вас есть та же проблема попробуйте запустить sudo aptd , если он выдает ошибку (извините, у меня нет точной), связанную с Python, то вы столкнулись с той же проблемой, что и я.
Если вы используете Python 3, Вы должны использовать pip3 вместо pip. Команда выглядит как $ pip3 install requirements.txt
у меня была такая же проблема, когда я использовал easy-install для установки pip для python 2.7.14. Для меня решение было (может быть, не лучшим, но работало для меня, и это, вероятно, самое простое), что папка, содержащая easy-install.py также содержал папку pkg_resources и я скопировала эту папку в ту же папку, где мой pip-script.py сценарий ( python27\Scripts ). С тех пор, я нашел его в python27\Lib\site-packages\pip-9.0.1-py2.7.egg\pip\_vendor папка также, это может быть лучшее решение для изменения импортировать этот.
yum -y install python-setuptools
я настраиваю Ceph есть проблема выполнить команду «$ ceph-deploy new node1» , и я выполняю команду «$ yum -y install python-setuptools» , тогда проблема исчезает.Спасибо
Если вы столкнулись с этой проблемой с приложением, установленным через стадион conda, решение (как говорится в этот отчет об ошибке) просто установить setup-tools с:
Источник
Нет модуля с именем pkg resources
Я развертываю приложение Django на сервере dev и нажимаю эту ошибку при запуске требований к установке pip.txt:
pkg_resources, похоже, распространяется с помощью setuptools. Первоначально я думал, что это не может быть установлено на python в virtualenv, поэтому я установил setuptools (2.6, та же версия, что и Python) на Python site-packages в virtualenv со следующей командой
изменить Это происходит только внутри virtualenv. если я откройте консоль за пределами виртуального окружения, то pkg_resources присутствует
но я все еще получаю ту же ошибку. Любые идеи о том, почему pkg_resources не находится на пути?
30 ответов:
Обновление Июля 2018
большинство людей теперь должны использовать pip install setuptools (возможно, с sudo ).
некоторым может потребоваться (пере)установить python-setuptools пакет через менеджер пакетов ( apt-get install , yum install и т. д.).
эта проблема может сильно зависеть от вашей ОС и среды разработки. Увидеть наследие/другие ответы ниже, если выше не работает для вас.
объяснение
данное сообщение об ошибке вызвана отсутствует/сломан питона setuptools пакета. За комментарий Мэтта М. и проблема setuptools #581, сценарий начальной загрузки, упомянутый ниже, больше не является рекомендуемым методом установки.
инструкции сценария начальной загрузки останутся ниже, если это все еще полезно для кого-либо.
Legacy Answer
я столкнулся с такой же ImportError сегодня при попытке использовать pip. Каким-то образом setuptools пакет был удален в моей среде Python.
чтобы устранить проблему, запустите сценарий установки для setuptools :
(или если у вас нет wget установлен (например, OS X), попробуйте
возможно sudo добавляется.)
если у вас есть какая-либо версия distribute , или любое setuptools ниже 0.6, вы должны удалить его в первую очередь.*
посмотреть Инструкция По Установке для дальнейшего подробности.
* если у вас уже есть работающий distribute , обновив его до «оболочки совместимости», которая переключает вас на setuptools легче. Но если что-то уже сломано, не пытайтесь это сделать.
исправлено это для меня в Debian. Похоже на удаление некоторых .deb packages (twisted set в моем случае) сломал путь, который python использует для поиска пакетов
Я видел эту ошибку при попытке установить rhodecode в virtualenv на ubuntu 13.10. Для меня решение было запустить
перед запуском easy_install rhodecode.
Это случилось со мной. Я думаю, что проблема произойдет, если требования.txt содержит запись «distribute», в то время как virtualenv использует setuptools. Pip попытается исправить setuptools, чтобы освободить место для распространения, но, к сожалению, это не удастся на полпути.
простое решение-удалить текущий virtualenv, а затем создать новый virtualenv с аргументом —distribute.
пример использования virtualenvwrapper:
в CentOS 6 Установка пакета python-setuptools исправлена.
у меня была эта ошибка раньше, и самый высокий рейтинг ответа дал мне ошибку, пытаясь загрузить . Я нашел другой источник, так что вы можете выполнить команду:
я обнаружил, что я также должен был использовать sudo чтобы заставить его работать, поэтому вам может понадобиться запустить:
Я также создал другое место, из которого можно загрузить скрипт:
нужно было немного больше судо. Затем используется easy_install для установки pip. Завод.
попробовав несколько из этих ответов, а затем обратившись к коллеге, что сработало для меня на Ubuntu 16.04 было:
в моем случае, это была только старая версия 3.1.1 подушки, что были проблемы (подушка 4.x работал нормально), и теперь это решено!
я исправил ошибку с virtualenv, сделав это:
скопировано pkg_resources.py от
это может быть дешевым обходным путем, но это сработало для меня.
если средства установки не существуют, вы можете попробовать установить system-site-packages, введя virtualenv —system-site-packages /DESTINATION DIRECTORY , изменение последней части, чтобы быть каталог, который вы хотите установить. pkg_rousources.py будет находиться в этом каталоге в lib / python2. 7/site-packages
для меня эта ошибка была вызвана тем, что у меня был подкаталог под названием «сайт»! Я не знаю, если это ошибка pip или нет, но я начал с:
/ some/dir / requirements.формат txt /участка/реж//
pip install-r требования.txt не будет работать, давая мне вышеуказанную ошибку!
переименование подпапки из «site» в » src » устранило проблему! Может быть, Пип ищет «сайт-пакеты»? Сумасшедший.
у меня была эта проблема, когда я активировал свой virtualenv как другой пользователь, чем тот, кто его создал. Кажется, это проблема с разрешением. Я обнаружил это, когда попробовал ответить на @cwc и увидел это в выводе:
переключение обратно к пользователю, который создал virtualenv, а затем запуск исходного pip install команда прошла без проблем. Надеюсь, это поможет!
У меня была эта проблема и сегодня. У меня только проблема внутри виртуального окружения.
решение для меня было деактивация виртуального env, удаление, а затем удаление virtualenv с pip и переустановка его. После этого я создал новый виртуальный env для своего проекта, а затем pip отлично работал как внутри виртуальной среды, так и в обычной среде.
похоже, что они отошли от bitbucket и теперь находятся на github (https://github.com/pypa/setuptools)
команда для запуска:
для меня это оказалось проблемой разрешения site-packages . Поскольку это только моя среда разработки, я поднял разрешения, и все снова работает:
видимо, вам не хватает setuptools. Некоторые версии используют виртуальное окружение распространять вместо setuptools по умолчанию. Используйте —setuptools опция при создании virtualenv или установить VIRTUALENV_SETUPTOOLS=1 в вашей среде.
я наткнулся на этот ответ, когда я пытался следовать это руководство для OSX. То, что сработало для меня, было, после запуска python get-pip , Я тоже должен был easy_install pip . Это исправило проблему невозможности запуска pip вообще. Я сделал есть куча старых macport вещи установлены. Возможно, это противоречило друг другу.
gohlke/pythonlibs/ затем эта проблема была решена.
поэтому я должен был сначала установить setuptools(easy_install).
просто переустановить setuptools by:
тогда все будет нормально.
Я использую CentOS 6.7, и мой python был просто обновлен с 2.6.6 до 2.7.11, после того, как попробовал так много разных ответов, наконец, следующий делает работу:
надеюсь помочь кому-то в такой же ситуации.
ни один из опубликованных ответов работал для меня, поэтому я переустановил pip и это сработало!
я столкнулся с этой проблемой после обновления с Ubuntu строить. Кажется, он прошел и удалил настроенные инструменты во всех моих виртуальных средах.
чтобы исправить это, я переустановил виртуальную среду обратно в целевой каталог. Это очистило отсутствующие Инструменты Настройки и снова запустило работу.
для меня хорошим решением было использовать —no-download опция для virtualenv ( VIRTUALENV_NO_DOWNLOAD=1 tox для tox.)
на Opensuse 42.1 исправлена следующая проблема:
ImportError: нет модуля с именем pkg_resources: решение состоит в том, чтобы переустановить python pip, используя следующую команду.
Шаг 1 войти в пользователя root.
Шаг 2 удалите пакет python-pip, если он существует.
Шаг 3 загрузка файлов с помощью команды wget(загрузка файла в pwd )
Шаг 4 запустить python файл.
Шаг: 5 Finaly exicute команда установки.
Примечание: пользователь должен быть root.
Я испытал эту ошибку в моей среде Google App Engine. И pip install -t lib setuptools Исправлена проблема.
следующее решение, предложенное Tukadiya Ramesh, работало для меня, однако я хочу отметить, что вы должны использовать правильные двоичные файлы/инструменты, соответствующие вашей среде, например, для меня установлен python3.6 (python 3):
ImportError: нет модуля с именем pkg_resources: решение заключается в переустановке python pip с помощью следующей команды.
Шаг: 1 Войдите в корневой пользователь.
Шаг: 2 Удаление пакет python-pip, если он существует.
apt-get purge-y python-pip (используйте python3-pip, если ошибка указывает../ python3/..)
Шаг: 3 загрузите файлы с помощью команды wget (загрузка файла в pwd)
wget https://bootstrap.pypa.io/get-pip.py (доступна версия 3.2, используйте ее в соответствии с вашим env)
Шаг: 4 запустите файл python.
python ./get-pip.py (если ошибка связана с python 3, то вы хотите использовать python3 или python3. 6 и т.д. [в соответствии с вашим ОКР.])
Шаг: 5 наконец выполнить команду установки.
apt-get install python-pip (опять же, используйте python3-pip, как в шаге 2)
Примечание: пользователь должен быть root.
P. S. Это решена проблема с моим обновление-менеджер в Ubuntu 16. Он продолжал сбой с ошибками, связанными с импортом Python. Если у вас есть та же проблема попробуйте запустить sudo aptd , если он выдает ошибку (извините, у меня нет точного), связанную с Python, то вы столкнулись с той же проблемой, что и я.
Если вы используете Python 3, Вы должны использовать pip3 вместо pip. Команда выглядит как $ pip3 install requirements.txt
у меня была такая же проблема, когда я использовал easy-install для установки pip для python 2.7.14. Для меня решение было (может быть, не самое лучшее, но работало для меня, и это, вероятно, самое простое), что папка, содержащая easy-install.py также содержал папку pkg_resources и я скопировала эту папку в ту же папку, где мой pip-script.py сценарий ( python27\Scripts ). С тех пор, я нашел его в python27\Lib\site-packages\pip-9.0.1-py2.7.egg\pip\_vendor папка также, это может быть лучшим решением для изменения pip-script.py файл для импорта этот.
я настраиваю Ceph есть проблема выполнить команду «$ ceph-deploy new node1» , и я выполняю команду «$ yum -y install python-setuptools» , тогда проблема исчезла.Спасибо
Если вы столкнулись с данной проблемой с помощью приложения, установленного через conda, решение (как говорится в этот отчет об ошибке) — просто установите настройки-инструменты:
Источник