您的位置:首页 > 编程语言 > Qt开发

使用pyinstaller发布pyqt4程序

2016-04-28 21:53 459 查看
最近在写一个开源项目,用到pyqt4,自然也就涉及到了发布程序。py2exe 没搞定,cx_Freeze遇到问题不好解决,所以第一次尝试当时放弃了,因为还没到发布的时候想把精力放在实现上。第二天群里有人提到pyinstaller,我就搜了一下,很不错,比较人性化。虽然遇到些小问题但是很快就解决了。

使用流程

1. 使用pyuic4把ui文件转成py文件,这样节省很多麻烦,当然也可以当做data集成进去这个方法我没细看,直接转成Py就可以用了

pyuic.bat main.ui -o mainRes.py


代码里添加引用,继承,还有setupUI,调试的时候使用loadUI直接使用ui文件。发布的时候注释一下

from mainRes import Ui_MainWindow
class MainWindow(QtGui.QMainWindow, Ui_MainWindow):
def __init__(self):
super(MainWindow, self).__init__()
# self.ui = uic.loadUi('../resource/main.ui', self)
self.setupUi(self)


最关键也是最简单的一步,发布

pyinstaller -y --upx-dir E:\green\upx391w\ --clean MainWindow.py


我在这里遇到过一个小问题就是setuptools的版本过高带来的小bug,降到19.2就没问题了。anaconda自带的更低所以就没问题了。出错信息在公司所以没记录下来,家里面的版本没问题

刚刚生成exe被360杀掉了。还真是麻烦,退了先吧

最后生成的目录好吓人,N多文件和目录。

居然137M,好吧。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: