【问题标题】:Python 3.5 + PyQt5 to standalone exePython 3.5 + PyQt5 到独立 exe
【发布时间】:2017-03-07 09:14:25
【问题描述】:

我是编码新手,我需要将我的 py 文件转换为 exe。我尝试了 py2exe,但它不适用于 python 3.5。然后我尝试了pyinstaller并且它工作了,但是当我将PyQt5添加到程序中时,pyinstaller也失败了。我尝试了nuitka,它构建了exe,但是当我单击exe文件时,它会显示一个控制台几秒钟并关闭。我需要一个在激活后显示 gui 的 exe。以下是我在程序中使用的模块:

import P4
import time
from datetime import datetime,date
import traceback
import os
import sys
import threading
from PyQt5 import QtCore
from PyQt5 import QtGui
from PyQt5.QtWidgets import *
from PyQt5.QtCore import QCoreApplication, QTimer

我从 nuitka exe 文件中得到的错误:

我从 pyinstaller exe 文件中得到的错误:

pyinstaller 需要的 Dll: dlls

【问题讨论】:

  • 你能从命令行运行 .exe 并发布你得到的错误吗?
  • @Repiklis 当然,在问题字段中添加了图片
  • 我只使用了 PyQt4 和 pyinstaller 而不是 PyQt5,但是你可以尝试将你的导入修改为 from PyQt5 import QtCore, QtGui,类似于建议的 PyQt4 method (point 2)。这可能有效,但我认为the PyQt path 最有可能存在问题。
  • @Repiklis 我试过了,没用。我附上了 pyinstaller 的截图,它说程序找不到 Qt5Core.dll 和其他 dll。我可以在哪里添加这些文件以便 pyinstaller 可以找到它们?
  • 最好的方式(个人意见)是使用.spec文件并使用this

标签: python py2exe pyinstaller pyqt5 nuitka


【解决方案1】:

我已经弄清楚如何使用 Python 3.5 和 pyinstaller 制作 exe。你需要安装这个:

pip install https://github.com/pyinstaller/pyinstaller/archive/develop.zip --upgrade

然后添加 PyQt5 dll 的路径。我用这个:

pyinstaller -y --clean --paths C:\TEMP\env\Lib\site-packages\PyQt5\Qt\bin\

【讨论】:

    猜你喜欢
    • 2018-04-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多