如何解决 cx_freeze 错误:_ 和_ 是同一个文件?

Posted

技术标签:

【中文标题】如何解决 cx_freeze 错误:_ 和_ 是同一个文件?【英文标题】:How to resolve the cx_freeze Error : _ and_ are the same file? 【发布时间】:2021-09-20 07:11:47 【问题描述】:

我试图将我的 pyqt5 应用程序转换为 exe。我正在使用 cx_freeze 这样做。我按照 cx_freeze 的要求创建了 setup.py 文件并运行 python setup.py build 命令来生成 exe。如图所示,在构建阶段似乎存在一些错误。 显示错误:

creating directory build\exe.win-amd64-3.9\lib
copying data from package PyQt5...
copying Z:\translator\lib\site-packages\PyQt5\QtCore.pyd -> build\exe.win-amd64-3.9\lib\PyQt5\QtCore.pyd
copying C:\Users\Rishabh\AppData\Local\Programs\Python\Python39\python3.dll -> build\exe.win-amd64-3.9\lib\PyQt5\python3.dll
copying Z:\translator\lib\site-packages\PyQt5\Qt5\bin\Qt5Core.dll -> build\exe.win-amd64-3.9\lib\PyQt5\Qt5Core.dll
copying Z:\translator\lib\site-packages\PyQt5\QtGui.pyd -> build\exe.win-amd64-3.9\lib\PyQt5\QtGui.pyd
copying Z:\translator\lib\site-packages\PyQt5\Qt5\bin\Qt5Gui.dll -> build\exe.win-amd64-3.9\lib\PyQt5\Qt5Gui.dll
copying Z:\translator\lib\site-packages\PyQt5\QtWidgets.pyd -> build\exe.win-amd64-3.9\lib\PyQt5\QtWidgets.pyd
error: WindowsPath('Z:/translator/lib/site-packages/PyQt5/QtWidgets.pyd') and WindowsPath('build/exe.win-amd64-3.9/lib/PyQt5/QtWidgets.pyd') are the same file.

cx_freeze 从虚拟环境复制 QtWidget.pyd 文件,然后引发两个文件相同的错误。如何解决这个问题??

【问题讨论】:

【参考方案1】:

卸载你首先运行的东西

然后检查WindowsPath('build/exe.win-amd64-3.9/lib/PyQt5/QtWidgets.pyd')是否已经存在于完全相同的文件路径中。

我认为它可能存在于文件系统中 \src\Application\build/exe.win-amd64-3.9/lib/PyQt5/QtWidgets.pyd

如果存在,请删除该文件并重新安装

【讨论】:

我尝试在重试之前删除整个构建文件夹,但它不起作用。 copying Z:\translator\lib\site-packages\PyQt5\QtWidgets.pyd -> build\exe.win-amd64-3.9\lib\PyQt5\QtWidgets.pyd error: WindowsPath('Z:/translator/lib/site-packages/PyQt5/QtWidgets.pyd') and WindowsPath('build/exe.win-amd64-3.9/lib/PyQt5/QtWidgets.pyd') are the same file.这说明cx_freeze先复制文件,然后报错。 你最初运行的是什么命令? 我跑了:python setup.py build 你运行什么删除到文件夹?欢迎您编辑您在上面的帖子,以便将所有信息集中在一个区域 我编辑了这篇文章。我删除了 build 文件夹,就像我们删除 windows 中的任何其他文件夹一样。

以上是关于如何解决 cx_freeze 错误:_ 和_ 是同一个文件?的主要内容,如果未能解决你的问题,请参考以下文章

Python 2.7 Cx_Freeze: ImportError: No module named __startup__

Python 2.7 Cx_Freeze: ImportError: No module named __startup__

使用 cx_Freeze 构建 msi:ValueError:FCI 错误 1

带有 cx_Freeze 的 Pyserial 运行时错误

CX_freeze 可执行文件将不起作用。 _tkinter DLL 加载失败

图像目录和cx_Freeze