PyInstaller "ImportError: нет модуля с именем Pyinstaller"

Это код, который создается при запуске python configure.py.

[email protected]:~/pyinstaller-2.0/PyInstaller$ python configure.py
Traceback (most recent call last):
  File "configure.py", line 28, in <module>
    from PyInstaller import HOMEPATH, PLATFORM
ImportError: No module named PyInstaller

Итак, в настоящее время я даже не могу запустить PyInstaller из-за отсутствующего модуля под названием... PyInstaller. Это PyInstaller 2.0, и вы можете найти несколько экранов внутри /pyinstaller -2.0 и каталогов /pyinstaller -2.0/PyInstaller здесь и здесь, соответственно.

Кто-нибудь знает, что происходит? Я попытался скопировать файл pyinstaller.py в каталог /pyinstaller -2.0 в каталог /pyinstaller -2.0/PyInstaller, но мне там не повезло.

Скорее всего, это будет какое-то смехотворно легкое исправление, но... Это меня озадачило. Если вам нужна дополнительная информация, просто спросите, и я постараюсь предоставить.

Ответ 1

С PyInstaller 2.0 вам не нужно запускать файлы конфигурации или pyinstaller. (Прочтите файл PyInstaller 2.0, который поставляется с установочными файлами.)

Чтобы создать свой проект; в каталоге /your/path/to/pyinstaller/, просто запустите:

"python pyinstaller.py [opts] yourprogram.py"

Ответ 2

Я не думаю, что файлы configure.py, makespec.py и build.py должны запускаться непосредственно в PyInstaller 2.0.

При загрузке там находится файл pyinstaller.py на верхнем уровне -.

Ответ 3

Похоже, что configure.py ожидает, что . будет на вашем PYTHONPATH. Вы должны иметь возможность запускать python в /pyinstaller-2.0 и import PyInstaller. Это должно завершиться неудачно, как в script. Вы можете добавить . в свою переменную среды в ~/.bashrc (убедитесь, что вы ее используете или запустите новый сеанс терминала, чтобы получить это изменение). Это будет примерно так:

export PYTHONPATH=.:$PYTHONPATH

Или вы можете добавить в начало настройки script:

import sys
sys.path.append('.')

В любом случае вы сможете запустить script в /pyinstaller-2.0 и импортировать модуль PyInstaller.