Упакованный Pyinstaller проект графического интерфейса Python PyQt5 не смог выполнить сценарий pyi_rth_qt5, не удалось найти Qt5Core.dll на

Я прочитал много статей по теме и нашел несколько решений, но ни одно из них не решило проблему. Две ошибки в заголовке выше все еще появляются. Причина проблемы в том, что не удается найти соответствующий файл DLL. См. область комментариев метод 2. Некоторые люди говорят, что это связано с версией PyQt5. Просто обновите PyQt5 до 5.13.1 или выше. Однако самая высокая версия pyqt5-tools — 5.13.0, поэтому, если вы хотите использовать pyqt5-tools или Eric6 для разработки, вы не сможете обновить версию.

Окончательное решение простое:

Раньше у моего Pyinstaller была версия 3.3.1, и после того, как я попробовал много методов, но ничего не помогло, я удалил эту версию Pyinstaller и повторно загрузил обновленную версию Pyinstaller (последняя версия на данный момент — Pyinstaller3.6.0), поэтому проблема в том, что вот так решено...
pip uninstall Pyinstaller (удалить старую версию)
pip install Pyinstaller -i https://pypi.douban.com/simple
(установить новую версию, а затем внутренний URL-адрес зеркала Douban, загрузка происходит быстро
) новая версия Pyinstaller по-прежнему необходима. Вручную включите свой собственный файл py, используя метод, описанный ниже -hidden-import (при условии, что все эти файлы находятся в одной папке), в противном случае вы все равно не сможете открыть приложение.

Два метода, которые я нашел, записаны ниже:

1. Вручную добавьте путь, по которому находится файл Qt5Core.dll.
pyinstaller -p D:\APP\Python 3.6.0\Lib\site-packages\PyQt5\Qt\bin -F -w PyQt5GUITest.py --hidden-import XXX.py --hidden-import
Объяснение параметра YYY.py:
-p D:\APP\Python 3.6.0\Lib\site-packages\PyQt5\Qt\bin
Добавьте путь для поиска (не влияет на поиск по умолчанию). путь)
-F
указывает большой пакет. Пакет представляет собой один файл. Если этот параметр не указан, в папке dist будет создано большое количество файлов, включая множество файлов библиотеки динамической компоновки dll. -w указывает, что окно
консоли
( черный ящик) не будет отображаться во время работы программы.

--hidden-import XXX.py
ссылается на один из своих собственных файлов py, который подходит для упаковки многофайловых проектов и может ссылаться на несколько
исходных адресов:
Вручную добавьте путь к каталогу bin PyQt5.
2. Ручные настройки в коде
не будут объяснить подробно, я этого не делал. Выйдите.
Исходный адрес:
вручную установите системные переменные перед импортом библиотеки pyqt5 в основную программу.

Je suppose que tu aimes

Origine blog.csdn.net/Online_exspiravit/article/details/105263358
conseillé
Classement