一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

python使用pyinstaller打包exe出现错误怎么办 如何解决

时间:2019-11-02 编辑:袖梨 来源:一聚教程网

本篇文章小编给大家分享一下python使用pyinstaller打包exe出现错误解决方法,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看。

环境pyqt5 + python3.6 32位

在导入pyqt5包之前加上如下代码

import sys
import os
if hasattr(sys, 'frozen'):
 os.environ['PATH'] = sys._MEIPASS + ";" + os.environ['PATH']

from PyQt5.QtWidgets import QApplication, QMainWindow
from pyqt_ui.MainWindow import MainWin

if __name__ == '__main__':
 app = QApplication(sys.argv)
 mainWindow = QMainWindow()
 main_dialog = MainWin(mainWindow)
 mainWindow.show()
 sys.exit(app.exec_())

运行

pyinstaller -F main2.py
INFO: PyInstaller: 3.5
INFO: Python: 3.6.4
INFO: Platform: Windows-7-6.1.7601-SP1
INFO: wrote E:workspacedevTestmain2.spec
INFO: UPX is not available.
INFO: Extending PYTHONPATH with paths
['E:\workspace\devTest', 'E:\workspace\devTest']
INFO: checking Analysis
INFO: Building because E:workspacedevTestmain2.py changed
INFO: Initializing module dependency graph...
INFO: Initializing module graph hooks...
INFO: Analyzing base_library.zip ...
INFO: running Analysis Analysis-00.toc
INFO: Adding Microsoft.Windows.Common-Controls to dependent assemblies of final executable
 required by d:mytoolenvenv36-32scriptspython.exe
INFO: Caching module hooks...
INFO: Analyzing E:workspacedevTestmain2.py
INFO: Processing pre-find module path hook distutils
INFO: distutils: retargeting to non-venv dir 'C:\Program Files (x86)\Python36-32\Lib\distutils\__init__.py'
INFO: Processing pre-safe import module hook win32com
INFO: Loading module hooks...
INFO: Loading module hook "hook-encodings.py"...
INFO: Loading module hook "hook-pydoc.py"...
INFO: Loading module hook "hook-PyQt5.py"...
WARNING: Hidden import "sip" not found!
INFO: Loading module hook "hook-PyQt5.QtCore.py"...
INFO: Loading module hook "hook-PyQt5.QtGui.py"...
INFO: Loading module hook "hook-PyQt5.QtWidgets.py"...
INFO: Loading module hook "hook-pythoncom.py"...
INFO: Loading module hook "hook-pywintypes.py"...
INFO: Loading module hook "hook-win32com.py"...
INFO: Loading module hook "hook-xml.py"...
INFO: Looking for ctypes DLLs
INFO: Analyzing run-time hooks ...
INFO: Including run-time hook 'pyi_rth_pyqt5.py'
INFO: Including run-time hook 'pyi_rth_win32comgenpy.py'
INFO: Looking for dynamic libraries
INFO: Looking for eggs
INFO: Using Python library d:mytoolenvenv36-32scriptspython36.dll
INFO: Found binding redirects:
[]
INFO: Warnings written to E:workspacedevTestbuildmain2warn-main2.txt
INFO: Graph cross-reference written to E:workspacedevTestbuildmain2xref-main2.html
INFO: checking PYZ
INFO: Building because toc changed
INFO: Building PYZ (ZlibArchive) E:workspacedevTestbuildmain2PYZ-00.pyz
INFO: Building PYZ (ZlibArchive) E:workspacedevTestbuildmain2PYZ-00.pyz completed successfully.
INFO: checking PKG
INFO: Building because toc changed
INFO: Building PKG (CArchive) PKG-00.pkg
WARNING: One binary added with two internal names.
WARNING: ('libGLESv2.dll',
 'D:\mytool\env\env36-32\lib\site-packages\PyQt5\Qt\bin\libGLESv2.dll',
 'BINARY')
WARNING: was placed previously at
WARNING: ('PyQt5\Qt\bin\libGLESv2.dll',
 'D:\mytool\env\env36-32\lib\site-packages\PyQt5\Qt\bin\libGLESv2.dll',
 'BINARY')
INFO: Building PKG (CArchive) PKG-00.pkg completed successfully.
INFO: Bootloader d:mytoolenvenv36-32libsite-packagesPyInstallerbootloaderWindows-32bitrun.exe
INFO: checking EXE
INFO: Building because toc changed
INFO: Building EXE from EXE-00.toc
INFO: Appending archive to EXE E:workspacedevTestdistmain2.exe
INFO: Building EXE from EXE-00.toc completed successfully.

打包成功

运行出现正常界面

注:为避免重复将main.py 更改为main2.py了

热门栏目