python pyinstaller 打包exe报错
今天用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
96 INFO: PyInstaller: 3.5
97 INFO: Python: 3.6.4
97 INFO: Platform: Windows-7-6.1.7601-SP1
98 INFO: wrote E:\workspace\devTest\main2.spec
100 INFO: UPX is not available.
101 INFO: Extending PYTHONPATH with paths
['E:\\workspace\\devTest', 'E:\\workspace\\devTest']
101 INFO: checking Analysis
104 INFO: Building because E:\workspace\devTest\main2.py changed
104 INFO: Initializing module dependency graph...
107 INFO: Initializing module graph hooks...
109 INFO: Analyzing base_library.zip ...
4264 INFO: running Analysis Analysis-00.toc
4291 INFO: Adding Microsoft.Windows.Common-Controls to dependent assemblies of final executable
required by d:\mytool\env\env36-32\scripts\python.exe
4632 INFO: Caching module hooks...
4642 INFO: Analyzing E:\workspace\devTest\main2.py
4771 INFO: Processing pre-find module path hook distutils
4772 INFO: distutils: retargeting to non-venv dir 'C:\\Program Files (x86)\\Python36-32\\Lib\\distutils\\__init__.py'
4773 INFO: Processing pre-safe import module hook win32com
5572 INFO: Loading module hooks...
5572 INFO: Loading module hook "hook-encodings.py"...
5669 INFO: Loading module hook "hook-pydoc.py"...
5670 INFO: Loading module hook "hook-PyQt5.py"...
5804 WARNING: Hidden import "sip" not found!
5805 INFO: Loading module hook "hook-PyQt5.QtCore.py"...
5900 INFO: Loading module hook "hook-PyQt5.QtGui.py"...
6088 INFO: Loading module hook "hook-PyQt5.QtWidgets.py"...
6463 INFO: Loading module hook "hook-pythoncom.py"...
6855 INFO: Loading module hook "hook-pywintypes.py"...
7235 INFO: Loading module hook "hook-win32com.py"...
7320 INFO: Loading module hook "hook-xml.py"...
7666 INFO: Looking for ctypes DLLs
7667 INFO: Analyzing run-time hooks ...
7670 INFO: Including run-time hook 'pyi_rth_pyqt5.py'
7672 INFO: Including run-time hook 'pyi_rth_win32comgenpy.py'
7679 INFO: Looking for dynamic libraries
8747 INFO: Looking for eggs
8747 INFO: Using Python library d:\mytool\env\env36-32\scripts\python36.dll
8747 INFO: Found binding redirects:
[]
8752 INFO: Warnings written to E:\workspace\devTest\build\main2\warn-main2.txt
8822 INFO: Graph cross-reference written to E:\workspace\devTest\build\main2\xref-main2.html
8837 INFO: checking PYZ
8839 INFO: Building because toc changed
8839 INFO: Building PYZ (ZlibArchive) E:\workspace\devTest\build\main2\PYZ-00.pyz
9775 INFO: Building PYZ (ZlibArchive) E:\workspace\devTest\build\main2\PYZ-00.pyz completed successfully.
9788 INFO: checking PKG
9789 INFO: Building because toc changed
9790 INFO: Building PKG (CArchive) PKG-00.pkg
10019 WARNING: One binary added with two internal names.
10020 WARNING: ('libGLESv2.dll',
'D:\\mytool\\env\\env36-32\\lib\\site-packages\\PyQt5\\Qt\\bin\\libGLESv2.dll',
'BINARY')
10020 WARNING: was placed previously at
10021 WARNING: ('PyQt5\\Qt\\bin\\libGLESv2.dll',
'D:\\mytool\\env\\env36-32\\lib\\site-packages\\PyQt5\\Qt\\bin\\libGLESv2.dll',
'BINARY')
20621 INFO: Building PKG (CArchive) PKG-00.pkg completed successfully.
20628 INFO: Bootloader d:\mytool\env\env36-32\lib\site-packages\PyInstaller\bootloader\Windows-32bit\run.exe
20628 INFO: checking EXE
20631 INFO: Building because toc changed
20631 INFO: Building EXE from EXE-00.toc
20632 INFO: Appending archive to EXE E:\workspace\devTest\dist\main2.exe
20659 INFO: Building EXE from EXE-00.toc completed successfully.
打包成功
运行出现正常界面
注:为避免重复将main.py 更改为main2.py了
python pyinstaller 打包exe报错的更多相关文章
- Pyinstaller 打包exe 报错 "failed to execute script XXX"的一种解决方案
最近用PyQt5写了一个界面小程序,需要打包成exe给到其他windows上使用,一开始使用python 3.7 64位,用pyinstaller打包exe,在64位机上运行正常. 但是目标电脑是32 ...
- python pyinstaller 打包程序报错解决
python打包exe,各种入坑 一.安装PyInstaller 1.安装pywin32 pip命令安装:pip install pywin32(推荐) 2.安装Pyinstaller pip命令安装 ...
- 【Python】pyinstaller打包运行报错failed to execute script main
前言 最近用pyinstaller打包的时候一直报"failed to execute script main". 最终使用"pyinstaller --hidden-i ...
- Py打包exe报错
Py打包exe报错 下载地址 https://github.com/pyinstaller/pyinstaller 用管理员执行 pip install https:/ ...
- Python: pyinstaller打包exe(含file version信息)
最近项目上一直都是用Spyder直接运行.py文件的方式来执行每日的自动化程序,每天都要手动去点击Run来执行一次,所以考虑把.py文件直接打包成exe,然后用windows的task schedul ...
- python pyinstaller打包exe暗坑1
环境 python2.7.9 win-xp 今天打包了一个小脚本,结果打开报错
- 利用PyInstaller打包exe文件
前言 平常我们通过Python写完一些小脚本之后,如果使用不频繁的话,一般会选择在DOS界面直接跑脚本,或者在IDE中运行.但当我们需要频繁使用某些脚本,或者在没有Python环境的机器上也能顺利运行 ...
- 在Windows平台下Qt的exe报错问题排查步骤
在Windows平台下Qt的exe报错问题排查步骤 工具介绍: 1. Dependency Worker Dependency Worker是一个免费的用具用来扫描任何的32bit 或者64bit 的 ...
- python 读取配置文件总是报错 configparser.NoSectionError: No section:
本文为作者原创,禁止转载,违者必究法律责任!!! python 读取配置文件总是报错 configparser.NoSectionError: No section: 无论是 python2的版本,还 ...
随机推荐
- maven 3.6的安装
呵呵,按网上的步骤不能安装maven3.6,所以降低版本.因为3.6的没有bin文件夹. 下载地址:https://archive.apache.org/dist/maven/maven-3/3.5. ...
- Autofac的AOP面向切面编程研究
*:first-child { margin-top: 0 !important; } .markdown-body>*:last-child { margin-bottom: 0 !impor ...
- Spring Environment的加载
这节介绍environment,默认环境变量的加载以及初始化. 之前在介绍spring启动过程讲到,第一步进行环境准备时就会初始化一个StandardEnvironment.下图为Environm ...
- 并发编程之多线程(Java)
一.线程与进程区别 每个正在系统上运行的程序都是一个进程.每个进程包含一到多个线程.线程是一组指令的集合,或者是程序的特殊段,它可以在程序里独立执行.也可以把它理解为代码运行的上下文.所以线程基本上是 ...
- Thinkphp5.0第五篇
原样输出 使用literal标签防止模板标签被解析 例如 {literal} {$name}<br/> {/literal} 模板单行注释 {//注释内容} 多行注释 {/*注释内容*/} ...
- 【流畅的python】16.1 - 生成器如何进化成协程
在生成器中加入yield关键字后,生成器调用方可以向生成器传入值,只需要使用.send(...)方法就可以传送数据.发送的数据会成为生成器函数中yield表达式的值.所以生成器可以作为协程使用. 协程 ...
- C#的FTP服务器源代码
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...
- 【JZOJ5248】花花的聚会
Description 注意测试数据中道路是 到 的单向道路,与题面恰好相反. Input Output Sample Input 7 7 1 3 1 2 6 7 3 6 3 5 3 4 7 2 3 ...
- js通过方法返回对象的注意点
问题:js通过方法返回一个字面量对象和返回一个提前已经定义好的字面量对象有区别吗? 答案:有 我们先来看看第一种情况,fun1方法返回一个提前没定义的字面量对象,然后通过调用方法返回三个对象,分别是o ...
- mysql的十二条基本语句
在 mysql里,所有语句都以分号作为结束标志! 1.连接服务器 Mysql -u username -p passwd 2.当连上服务器后,首先面对的是库,库有1个或多个,因此我们想对表进行操作的话 ...