Как конвертировать .py в .exe со своей venv?
Есть небольшой код для работы с DB SQLite. Также в программе используется GUI Tkinter со своими темами. И при этом я работал через venv.
Как мне собрать в одно целое venv и сам код? То есть, я хочу при создании исполняемого файла использовать не просто версию python, а свою виртуальную среду. Как такое реализовать?
Ответы (2 шт):
Если запустить pyinstaller с ключами -D или -F, то при конвертации скрипта pyinstaller скопирует все нужные файлы для запуска программы, тем самым вы получите полностью готовую к работе на любом компьютере программу. Разница в ключах в том, что -D - собирает все необходимые файлы в папку с программой, в то время как -F собирает единый запускаемый файл, включающий внутри себя все необходимые пакеты, модули и компоненты.
Запускать так:
> pyinstaller -D myscript.py
или так:
> pyinstaller -F myscript.py
Для того, чтобы использовать виртуальную среду в качестве источника библиотек можно использовать параметр параметр --paths. Нужно ввести следующую команду со своими необходимыми параметрами:
pyinstaller --paths path\to\venv\Lib\site-packages file.py
Вот пример использования:
pyinstaller --noconfirm --onefile --console --paths ^
"C:/Users/User/Desktop/Новая папка (2)/python librares/venv/Lib/site-packages" ^
"C:/Users/User/Desktop/Новая папка (2)/python librares/main.py"