伝説 2018-06-17 15:25 采纳率: 0%
浏览 2031
已结题

pyinstaller或cx_freeze打包pyqt5程序的问题

环境:
python3.4.4
pyqt5
qt5.5.1
win10 x64

python写的pyqt5程序需要转换成exe,用cxfreeze打包可以正常运行,但是输出文件太大,就一个小的GUI程序就超过200m了,google也有一些说法总之就是很难办。
用pyinstaller打包以后程序体积比较小只有30来兆,但是又无法运行,点击exe提示fail to execute script ……也没提示更多信息,我查google说是要加入pyqt5的路径,但是我电脑PyQt5的文件夹没有网上说的qt\bin这个路径,我就直接加的“C:\Python34\Lib\site-packages\PyQt5”这个路径,打包出来能看到pyqt5的一些组件,但是exe还是无法运行。

……总之cxfreeze体积太大,pyinstaller无法运行,不知道咋办了……

感觉python作为一个比较成熟的东西,为什么在打包exe这么基础的功能上反而不成熟。

  • 写回答

2条回答 默认 最新

  • threenewbee 2018-06-17 15:52
    关注

    因为python程序的依赖项太多,这些都需要打包进去才能让你的程序在目标电脑上运行(所谓平台无关的代价)
    而C#、delphi假定在特定的windows上运行,并且基本的运行时不需要打包到exe,所以就很小巧了。你见过商业软件GUI用python写的么?没有吧。

    评论

报告相同问题?

悬赏问题

  • ¥15 mmocr的训练错误,结果全为0
  • ¥15 python的qt5界面
  • ¥15 无线电能传输系统MATLAB仿真问题
  • ¥50 如何用脚本实现输入法的热键设置
  • ¥20 我想使用一些网络协议或者部分协议也行,主要想实现类似于traceroute的一定步长内的路由拓扑功能
  • ¥30 深度学习,前后端连接
  • ¥15 孟德尔随机化结果不一致
  • ¥15 apm2.8飞控罗盘bad health,加速度计校准失败
  • ¥15 求解O-S方程的特征值问题给出边界层布拉休斯平行流的中性曲线
  • ¥15 谁有desed数据集呀