2017-01-17 9 views
0

разработки машины:исполняемый файл развернут pyinstaller не может работать на другом компьютере (виртуальная машина)

Я развертываются с помощью pyinstaller qrprint.py, он хорошо работает на этой машине.

Затем я copyed папку на виртуальную машину (VMware Workstation + winowd7 32bit) и бежать, он не работает с Infomation Failed to execute script pyi_rth_qt5

Я пытаюсь найти решение, как https://github.com/pyinstaller/pyinstaller/issues/1679, он не может помочь. Я использовал DependencyWalker, нашел недостающую dll, он не может работать.

Это детали на две машины с pyinstaller qrprint.py --debug

devolop:

PyInstaller Bootloader 3.x 
LOADER: executable is C:\Users\Administrator\Desktop\python demo\dist\qrPrint\qrPrint.exe 
LOADER: homepath is C:\Users\Administrator\Desktop\python demo\dist\qrPrint 
LOADER: _MEIPASS2 is NULL 
LOADER: archivename is C:\Users\Administrator\Desktop\python demo\dist\qrPrint\qrPrint.exe 
LOADER: No need to extract files to run; setting extractionpath to homepath 
LOADER: SetDllDirectory(C:\Users\Administrator\Desktop\python demo\dist\qrPrint) 
LOADER: Already in the child - running user's code. 
LOADER: Python library: C:\Users\Administrator\Desktop\python demo\dist\qrPrint\python27.dll 
LOADER: Loaded functions from Python library. 
LOADER: Manipulating environment (sys.path, sys.prefix) 
LOADER: sys.prefix is C:\Users\ADMINI~1\Desktop\PYTHON~1\dist\qrPrint 
LOADER: Setting runtime options 
LOADER: Initializing python 
LOADER: Overriding Python's sys.path 
LOADER: Post-init sys.path is C:\Users\Administrator\Desktop\python demo\dist\qrPrint 
LOADER: Setting sys.argv 
LOADER: setting sys._MEIPASS 
LOADER: importing modules from CArchive 
LOADER: extracted struct 
LOADER: callfunction returned... 
LOADER: extracted pyimod01_os_path 
LOADER: callfunction returned... 
LOADER: extracted pyimod02_archive 
LOADER: callfunction returned... 
LOADER: extracted pyimod03_importers 
LOADER: callfunction returned... 
LOADER: Installing PYZ archive with Python modules. 
LOADER: PYZ archive: out00-PYZ.pyz 
LOADER: Running pyiboot01_bootstrap.py 
LOADER: Running pyi_rth__tkinter.py 
LOADER: Running pyi_rth_qt5.py 
LOADER: Running pyi_rth_qt5plugins.py 
LOADER: Running qrPrint.py 

виртуальная машина:

PyInstaller Bootloader 3.x 
LOADER: executable is C:\Users\Administrator\Desktop\qrPrint\qrPrint.exe 
LOADER: homepath is C:\Users\Administrator\Desktop\qrPrint 
LOADER: _MEIPASS2 is NULL 
LOADER: archivename is C:\Users\Administrator\Desktop\qrPrint\qrPrint.exe 
LOADER: No need to extract files to run; setting extractionpath to homepath 
LOADER: SetDllDirectory(C:\Users\Administrator\Desktop\qrPrint) 
LOADER: Already in the child - running user's code. 
LOADER: Python library: C:\Users\Administrator\Desktop\qrPrint\python27.dll 
LOADER: Loaded functions from Python library. 
LOADER: Manipulating environment (sys.path, sys.prefix) 
LOADER: sys.prefix is C:\Users\ADMINI~1\Desktop\qrPrint 
LOADER: Setting runtime options 
LOADER: Initializing python 
LOADER: Overriding Python's sys.path 
LOADER: Post-init sys.path is C:\Users\Administrator\Desktop\qrPrint 
LOADER: Setting sys.argv 
LOADER: setting sys._MEIPASS 
LOADER: importing modules from CArchive 
LOADER: extracted struct 
LOADER: callfunction returned... 
LOADER: extracted pyimod01_os_path 
LOADER: callfunction returned... 
LOADER: extracted pyimod02_archive 
LOADER: callfunction returned... 
LOADER: extracted pyimod03_importers 
LOADER: callfunction returned... 
LOADER: Installing PYZ archive with Python modules. 
LOADER: PYZ archive: out00-PYZ.pyz 
LOADER: Running pyiboot01_bootstrap.py 
LOADER: Running pyi_rth__tkinter.py 
LOADER: Running pyi_rth_qt5.py 
Traceback (most recent call last): 
    File "site-packages\PyInstaller\loader\rthooks\pyi_rth_qt5.py", line 56, in <m 
odule> 
    File "c:\dvlp\python27\Lib\site-packages\PyInstaller\loader\pyimod03_importers 
.py", line 546, in load_module 
ImportError: DLL load failed: 找不到指定的模块。 
Failed to execute script pyi_rth_qt5 
LOADER: OK. 
LOADER: Cleaning up Python interpreter. 

что я должен делать?

+0

Я думаю, вам нужен QT для установки. –

+0

@ Jean-FrançoisFabre Я нашел причину, это так глупо. спасибо за ваше предложение – Fred

ответ

1

Я нашел причину. это настолько глупо, что я забыл установить vc runtime libiray. При установке он работает хорошо.

Но я не могу работать на XP, я думаю, что причина в Qt5.7.1 msvc 2015 не поддерживает XP.

Как удовлетворить PyQt5 от Qt5.7.1 с поддержкой XP - это другой вопрос.

 Смежные вопросы

  • Нет связанных вопросов^_^