Python 运行具有pyzmq依赖项的脚本时出现Pyinstaller错误

Python 运行具有pyzmq依赖项的脚本时出现Pyinstaller错误,python,python-3.x,pyinstaller,zeromq,pyzmq,Python,Python 3.x,Pyinstaller,Zeromq,Pyzmq,这是我的第一篇文章 我在创建具有pyzmq(v22.0.2)依赖项的pyinstaller(v4.2)可执行文件时遇到问题。我通过运行“pyinstaller main.py”创建了一个可执行文件。dist文件夹创建时没有错误,但是当我在终端中运行可执行文件时,我在下面的引号中看到了错误 我在StackOverflow和pyinstaller的文档中搜索了此类问题,但没有找到与我的确切问题相匹配的。我看到有人提到了一个.spec文件来解决类似的问题,但我不确定这是否是一种解决方法,因为我不清楚p

这是我的第一篇文章

我在创建具有pyzmq(v22.0.2)依赖项的pyinstaller(v4.2)可执行文件时遇到问题。我通过运行“pyinstaller main.py”创建了一个可执行文件。dist文件夹创建时没有错误,但是当我在终端中运行可执行文件时,我在下面的引号中看到了错误

我在StackOverflow和pyinstaller的文档中搜索了此类问题,但没有找到与我的确切问题相匹配的。我看到有人提到了一个.spec文件来解决类似的问题,但我不确定这是否是一种解决方法,因为我不清楚pyzmq.libs\.load_顺序是什么

有没有人知道如何克服这个错误,或者有好的线索告诉我可以尝试什么

"C:\Users\[redacted path]\dist\main>main.exe
Traceback (most recent call last):
  File "main.py", line 1, in <module>
  File "<frozen importlib._bootstrap>", line 983, in _find_and_load
  File "<frozen importlib._bootstrap>", line 967, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
  File "PyInstaller\loader\pyimod03_importers.py", line 531, in exec_module
  File "zmq\__init__.py", line 19, in <module>
  File "zmq\__init__.py", line 13, in _delvewheel_init_patch_0_0_9
FileNotFoundError: [Errno 2] No such file or directory: 'C:\\Users\\[redacted path]\\dist\\main\\pyzmq.libs\\.load_order'
[4408] Failed to execute script main

C:\Users\[redacted path]\dist\main>"
“C:\Users\[redacted path]\dist\main>main.exe
回溯(最近一次呼叫最后一次):
文件“main.py”,第1行,在
文件“”,第983行,在_find_和_load中
文件“”,第967行,在“查找”和“加载”中解锁
文件“”,第677行,在\u加载\u解锁
exec_模块中第531行的文件“PyInstaller\loader\pyimod03_importers.py”
文件“zmq\\ uuuuu init\ uuuuu.py”,第19行,在
文件“zmq\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\.py”,第13行,位于delvewheel\\\\\\\\\\\\\\\\\\\\
FileNotFoundError:[Errno 2]没有这样的文件或目录:“C:\\Users\\[redacted path]\\dist\\main\\pyzmq.libs\\.load\u order”
[4408]无法执行主脚本
C:\Users\[redacted path]\dist\main>”

\Lib\site packages
中找到一个名为“pyzmq.libs”的文件夹

例如,我在这里使用Miniconda3,所以我在
C:\\Users\MyPC\Miniconda3\envs\my_env\Lib\site packages中得到了它


然后,将此文件夹复制到您的
C:\\Users\\[redacted path]\\dist\\main
文件夹中,然后重试该可执行文件。

\Lib\site包中找到一个名为“pyzmq.libs”的文件夹

例如,我在这里使用Miniconda3,所以我在
C:\\Users\MyPC\Miniconda3\envs\my_env\Lib\site packages中得到了它


然后,将此文件夹复制到您的
C:\\Users\\[redacted path]\\dist\\main
文件夹,然后重新尝试可执行文件。

我遇到了同样的问题,找到了此解决方案 使用
pip install pyzmq==21.0.0

然后您可以再次运行pyinstaller,它将运行得非常好。

我也遇到了同样的问题,找到了这个解决方案 使用
pip install pyzmq==21.0.0

然后,您可以再次运行pyinstaller,它将运行得非常好。

这非常好。非常感谢。对于任何其他遵循此路径的人,当尝试降低PYZMQ时,会提示您更新一些VisualStudioC++代码。如果你只是按照错误信息的指示去做,你就可以走了。这对我来说也很有用。我安装了21.0.0版,不再出现此错误。这工作做得很好。非常感谢。对于任何其他遵循此路径的人,当尝试降低PYZMQ时,会提示您更新一些VisualStudioC++代码。如果你只是按照错误信息的指示去做,你就可以走了。这对我来说也很有用。我安装了21.0.0版,不再出现此错误。thksI无法让这条路径发挥作用。你做到了吗?是的,我在尝试用fman构建系统打包我的GUI应用程序时做到了。你能找到你的“zmq”软件包的位置吗?我无法通过这条路径工作。你做到了吗?是的,我在尝试用fman构建系统打包我的GUI应用程序时做到了。你能找到你的“zmq”软件包的位置吗?