Я использую:
Windows 10
Python 3.8.1
tkinter 8.6.3
cx_freeze 6.1
Я использую cx_freeze с файл setup.py для компиляции моего python скрипта (Примечание: я также заставил работать PyInstaller - у него та же проблема). Это создает исполняемый файл, который работает. К сожалению, он также создает каталог "lib", размер которого превышает 26 МБ (18 МБ для PyInstaller) и в большинстве случаев он не нужен.
Примеры:
libcrypto-1_1.dll (без использования crypto, это занимает 2,2 МБ)
unicodedata.pyd (без использования Unicode, это занимает 1 МБ)
libssl-1_1 .dll (не использует ssl, это занимает> 500 КБ)
Существует также папка tkinter, созданная из> 6 МБ файлов.
В этом есть следующие подпапки:
tcl \ encoding (~ 1.3 M) и имеет все виды кодирования, я не использую
tcl \ msgs (~ 100K) с кучей бесполезных сообщений файлы на разных языках в нем
tcl \ tzdata (~ 1,3M) с данными часового пояса. Мне не нужны
tk \ demos (~ 720K) с демонстрациями, мне не нужны tk \ images (~ 100K) с изображениями мне не нужны tk \ msgs (~ 100K) с большим количеством файлов msg Мне не нужны tk \ ttk (~ 120K) с темами, которые я не использую
... и целая куча из других файлов, я подозреваю, что мне не нужно. Это небольшой скрипт с очень небольшой целевой аудиторией (я и несколько других пользователей, переносимость здесь не требуется). Я нашел и удалил ненужные файлы. Я обнаружил, что они мне не нужны, удалив их и посмотрев, происходит ли сбой или запуск моего .exe-файла. Каждый раз, когда я обновляю свою программу и перекомпилирую, она восстанавливает файлы. Я веду список, но мне надоело проверять, что изменилось, а затем каждый раз находить и удалять ненужные файлы. Как я могу предотвратить их создание при компиляции?