Форум сайта python.su
0
Установимл pyintstaller через “pip install pyinstaller”
Собираю exe “pyinstaller myprog.py”
Получаю в папке “dist” исполнтельный файл и кучу библиотек. - Программа работает
Собираю все в один EXE “pyinstaller -F myprog.py”
Получаю один exe, но программа не запускается.
Пишет: ‘numpy.lib._compiled_base.pyd could not be extracted!’
А там таких фалов numpy.* должно быть 8 штук.
Как исправить?
Офлайн
39
Не используйте pyinstaller вообще. Это набор хаков. Он не работает со всеми возможными импортируемыми модулями. Простое импортирование functools ставит его в тупик и собрать уже ничего не получится… Жуткая штука. Смотрите в сторону cxFreeze. Там таких проблем пока обнаружено не было.
P.S. Это открытие сделал не я, а майн френд JOHN_16.
P.S.S. А вообще собирать в exe это лихой изврат 
Отредактировано 4kpt_III (Дек. 29, 2014 13:02:29)
Офлайн
0
Изврат не изврат. Если под windows для расспространеия программы можно взять и всю папку Python34 в свой инсталятор засунуть.
То в линукс наверное так не получится. Там библиотеки для моей программы ставятся тремя способами. 1) Из репозитория 2) Deb пакет скаченный с сайта 3) Из исходников python setap.py install
Сам замучаешься все ставить. А кто не разбирается вообще не сможет.
Офлайн
0
Только что попробывал cxFreeze.
Пришлось коечто добросить руками в папку с exe. =>sqldrivers
Вопросы.
1)Можно ли собрать все в одном exe?
2)Как собрать что бы программа запускалась с консолью?
3) На сколько это все надежно в случае возниковения критической ошибки? Программа будет работать дальше или будит системная ошибка с аварийным завершением?
4) Программа затребовала myres_rc.py. Возникла идея. Можноли один модуль - файл.py не запоковывать, а оставить возможность конечному пользователю использовать его для подключени своего скрипта( как открытый протокол для интеграции программы или подключения плагинов)?
Отредактировано mishapk (Дек. 29, 2014 14:01:27)
Офлайн
39
1. Не знаю, но должно быть. Документация Вам даст точный ответ.
2. То же, что и 1.
3. Ошибка это всегда ошибка. Аварийное завершение.
mishapk
Сам замучаешься все ставить. А кто не разбирается вообще не сможет.
Если количество пакетов большое, то используется файл requirements.txt. На винде то же самое. Ставится питон, потом pip. Качается Ваш пакет и ставится одной командой и сам пакет и все зависимости.
Офлайн
72
mishapkТолько через извращения
1)Можно ли собрать все в одном exe?
mishapkВ Executable укажите base='Console'
2)Как собрать что бы программа запускалась с консолью?
mishapkНа то она и “критическая”
3) На сколько это все надежно в случае возниковения критической ошибки? Программа будет работать дальше или будит системная ошибка с аварийным завершением?
Офлайн