V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
XIVN1987
V2EX  ›  Python

Py3.6 + PyQt5 图形界面程序用 pyinstaller 打包生成的 EXE 比较大

  •  
  •   XIVN1987 · 2019-03-01 23:14:25 +08:00 · 6518 次点击
    这是一个创建于 2085 天前的主题,其中的信息可能已经有所发展或是发生改变。

    用 Py3.6 + PyQt5 写了个图形界面小工具,,用“ pyinstaller -F SVDView.py ”打包,生成的 EXE 文件 33.4M

    类似的程序用 Py2.7 + PyQt4 编写、pyinstaller 打包后不到 12M

    于是用“ pyinstaller SVDView.py ”将程序打包到目录下,,看了下感觉有些文件是多余的,比如 opengl32sw.dll 、libGLESv2.dll 、d3dcompiler_47.dll 、Qt5Quick.dll 、Qt4Network.dll ,,将这些文件删掉执行了下程序,,程序执行正常

    将这个目录压缩了下,,不到 18M,,感觉还可以,,不过感觉文件夹里一堆文件不如“ pyinstaller -F SVDView.py ”将所有内容打包成一个 EXE 文件简洁,,

    pyinstaller 有没有什么命令选项可以将修改后的目录打包成一个 EXE 文件的方法??

    8 条回复    2019-03-04 01:11:50 +08:00
    XIVN1987
        1
    XIVN1987  
    OP
       2019-03-01 23:22:03 +08:00
    继续删掉 Qt5Qml.dll 、_ssl.pyd 、translations 目录下的除 en 和 cs 外的其他文件,,

    压缩后 14.5M ,,执行暂时正常,,
    IceCola1
        2
    IceCola1  
       2019-03-01 23:30:18 +08:00
    问一下,pycharm 开发的吗,我之前试了下 pyqt5,c 语言写的,没有智能提示感觉很难受啊。
    cdwyd
        3
    cdwyd  
       2019-03-01 23:47:59 +08:00
    比起那些用浏览器做界面的已经好多了
    XIVN1987
        4
    XIVN1987  
    OP
       2019-03-01 23:56:31 +08:00 via Android
    @IceCola1
    用的 sublime,,智能提示很弱,确实很痛苦,,不过还好程序简单,用的组件也不多,,
    nicevar
        5
    nicevar  
       2019-03-03 12:02:42 +08:00
    Qt 基础库那几个文件如果是在 windows 下可以用 upx 之类进行压缩,体积能减少一半,但是 platform 的 dll 不能压缩,可能会运行不了,其实没必要弄成一个 exe,使用目录的方式发布就行了,如果只是简单的小工具压缩一下基本上就在 8M 左右
    gongqingkui
        6
    gongqingkui  
       2019-03-03 22:06:12 +08:00
    压缩成一个 EXE 的话,执行的时候需要解压缩 exe,然后再执行代码,比较慢。
    用目录的方法速度比较快。
    XIVN1987
        7
    XIVN1987  
    OP
       2019-03-03 22:38:14 +08:00
    @gongqingkui
    启动速度也是很重要的指标,,那看来还是打包成目录比较好
    lovejunjie1
        8
    lovejunjie1  
       2019-03-04 01:11:50 +08:00
    会不会是 import 了顶层库,这个库巨大,但是只用了一个功能。生成 exe 的时候全给抓过去了?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1802 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 16:45 · PVG 00:45 · LAX 08:45 · JFK 11:45
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.