Почему мой неиспользуемый исполняемый файл намного меньше - PullRequest
2 голосов
/ 21 марта 2011

Я написал несколько игр для соревнования в Stackless Python и мне нужно было создать исполняемый файл.Случайно, однако, я использовал CPython 2.6 вместо Stackless Python 2.5 для сборки исполняемого файла.Я правильно перестроил и обнаружил, что окончательный размер дистрибутива уменьшился с чуть более 30 Мбайт до примерно 8. Из любопытства, почему именно это было?Предположительно, я бы рискнул, потому что я установил библиотеки, такие как Twisted и Qt4, в CPython, но не в Stackless, и пакеты Py2exe во всем, независимо от того, используются они или нет (возможно, потому что вы всегда можете вызывать код динамически),но если кто-то на самом деле знает, мне было бы интересно узнать, почему.

1 Ответ

0 голосов
/ 21 марта 2011

py2exe просматривает ваши зависимости и включает только те, которые, по вашему мнению, вы используете. Вы можете вручную указать список исключений, если он включает дополнительные модули.

Извлеките этот скрипт py2exe (замените "setup.py" на имя вашего основного основного файла py). Этот сценарий установки пропускает этап связывания, поэтому вы можете просмотреть, что занимает больше места.

...