Я ищу учебник по PyInstaller, который объяснит такие вещи, как
- как создать файлы .pkg
- как включать/исключать модули
- как включить файлы данных в каталог установки.
Я не могу понять, что такое стандартная документация PyInstaller.
Я ищу учебник по PyInstaller, который объяснит такие вещи, как
Я не могу понять, что такое стандартная документация PyInstaller.
Оба руководства в принятом ответе кажутся устаревшими. PyInstaller теперь предоставляет исполняемый файл script, который позволяет вам выполнять
pyinstaller your_script.py
везде, где находится your_script.py
- вместо старого режима копирования вашего your_script.py
туда, где вы скопировали исходный код PyInstaller.
Вот краткое, более недавнее руководство, в котором вы можете прочитать простой пример Hello World:
http://www.pythoncentral.io/pyinstaller-package-python-applications-windows-mac-linux/
Вы смотрите здесь: упрощенный учебник
Или здесь: немного более длинный учебник
EDIT: добавление файлов данных подразумевается во втором учебном пособии. Если вы используете второй пример непосредственно перед разделом "Обертка" вместе с официальной документацией: Analysis, похоже, что вы укажите ваши зависимости файлов данных как часть подобъекта "datas" при вызове функции Analysis().
EDIT2: из официальной документации: "Как правило, вам не нужно создавать собственные PKG, так как EXE сделает это за вас. Это один из способов включить данные только для чтения в однопоточное развертывание. Однопользовательское развертывание, включая поддержку TK, будет использовать эту технику".
Пример (должен быть примерно такой):
a = Analysis(...)
pyz = PYZ(a.pure)
pkg = PKG(a.pure, name="PackageName")
exe = EXE(pyz, pkg,
a.scripts,
a.binaries,
a.zipfiles,
a.datas,
...)
Создать один исполняемый файл вашего python script или проекта
создайте свой script или проект. Чтобы установить pyinstaller на тип Windows
pip install pyinstallerТеперь откройте командную строку и введите команду
pyinstaller --onefile myscripy.pyВы найдете папку dist. Перейдите в папку dist, и вы получите файл .exe python script.