У меня довольно «тяжелая» программа на python, которую я хотел бы скомпилировать в exe.
Программа имеет приличный объем импорта, но с использованием инфраструктуры PyQT4 я загружаю этот импорт, пока отображается заставка.
Я компилирую эту программу в один файл .exe, используя pyinstaller (в cmd):
python %pycompile_file% --onefile --noconsole --icon=Icon.ico Script.pyw
Однако, несмотря на то, что заставка настроена на показ, в то время как импортируется значительное количество модулей (особенно включая sympy), и даже если она показывается мгновенно и в течение адекватного периода времени при запуске через python;
Запуск созданного .exe приводит к серьезной задержке перед отображением заставки, которая отображается только в течение очень короткого времени перед загрузкой всей программы.
Мое подозрение заключается в том, что компиляция из .pyw в .exe ускорила фактический «код» (а значит, и заставку короче), но замедляет фактическое «начало» выполнения программы.
Как я могу это исправить, чтобы .exe не запускался так медленно?
(Я подозреваю, что компиляция в --onefile вносит большой вклад, но мне нужно, чтобы файл .exe был одной папкой вверх по сравнению со всеми .dll, и я не могу понять, как заставить pyinstaller сделать это)
Спасибо!
Windows 7
питон 2.7.2
pyinstaller
PyQt4