Ошибка импорта: невозможно импортировать имя get_importer
Я пытаюсь запустить скрипт scanpypi - скрипт поддержки Buildroot (2017.02), но получаю ImportError: невозможно импортировать имя get_importer.
Traceback (последний вызов был последним): файл "./support/scripts/scanpypi", строка 52, в файле импорта setuptools. Файл "/usr/local/lib/python2.7/dist-packages/setuptools/init.py", строка 12, в файле импорта setuptools.version "/usr/local/lib/python2.7/dist-packages/setuptools/version.py", строка 1, в файле импорта pkg_resources "/usr/local/lib/python2.7/ dist-packages / pkg_resources /init.py ", строка 40, из pkgutil import get_importer ImportError: невозможно импортировать имя get_importer
Я добавил следующие строки в начало скрипта scanpypi, чтобы увидеть sys.path
- импорт системы
- печать (sys.path)
выход:
['/ home / timo / bldr_lab / buildroot / support / scripts', '/usr/lib/python2.7', '/usr/lib/python2.7/plat-x86_64-linux-gnu', '/ usr / lib / python2.7 / lib-tk ',' /usr/lib/python2.7/lib-old ',' /usr/lib/python2.7/lib-dynload ',' / usr / local / lib / python2.7 / dist-packages ',' /usr/lib/python2.7/dist-packages ']
Поскольку pkgutil находится в каталоге /usr/lib/python2.7, проблема не связана с путями.
Я также удалил и переустановил python2.7, pip и setuptools, но без помощи.
В чем может быть причина ImportError?
1 ответ
Это ошибка в Buildroot. Это связано с фиксацией 12683184b1969f65680cb7db55b547a620a9860f, которая представила pkgutil.py
файл в поддержку / скрипты. Это противоречит pkgutil.py
из setuptools.
Решение состоит в том, чтобы переименовать pkgutil.py
файл на что-то другое, и обновите импорт в других сценариях соответственно. Если вы сделаете это, пожалуйста, опубликуйте патч в списке рассылки Buildroot, чтобы каждый мог получить пользу. Смотрите руководство, чтобы узнать, как публиковать патчи.