Как настроить PyInstaller в PyCharm для проекта, использующего внешние инструменты внутри venv? - PullRequest
0 голосов
/ 05 февраля 2020

У меня есть проект в PyCharm с несколькими файлами Python, а также некоторые текстовые файлы, которые я хочу экспортировать в .exe через PyInstaller (я нахожусь на Win 7). В проекте используются некоторые внешние модули, установленные внутри venv через pip (PyInstaller - один из них).

external tools settings

Я хочу, чтобы все было просто, а не используйте любые модули за пределами venv в сборке по понятным причинам. Однако, когда я пытаюсь запустить инструмент PyInstaller в папке проекта, я получаю ошибку разрешения: PermissionError: [Errno 13] Permission denied. Использование PyInstaller на main.py внутри проекта строит его на первый взгляд очень хорошо, но при запуске .exe в cmd отображается error loading Python DLL. Как мне сделать это правильно? Что-то подсказывает мне, что spe c должен быть создан заранее, чтобы включить все файлы и модули, используемые в проекте.

1 Ответ

0 голосов
/ 05 февраля 2020

Чтобы ответить на вопрос в заголовке, Arguments, указанное вами в PyCharm, передается в pyinstaller.exe при запуске инструмента. Таким образом, это должен быть путь к main.py или путь к вашему .spec файлу, а не $FilePath$, который является макросом, который заменяется файлом, который в данный момент открыт в PyCharm.

Вы должны определенно иметь файл .spec, предназначенный для контроля версий. Это делает ваши сборки PyInstaller более согласованными и позволяет другим легко их воспроизводить. См https://pyinstaller.readthedocs.io/en/stable/spec-files.html

...