python - pyinstaller 将错误的 zlib.dll 添加到 exe 文件夹
问题描述
我正在尝试使用 冻结我的应用程序pyInstaller
,不幸的是,尽管我的.exe
文件已正确创建,但当我尝试运行该应用程序时,每次都会失败,ImportError
因为缺少dll
文件而没有通知缺少哪个文件,如下所示:
File "Lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 396, i
n load_module
File "site-packages\matplotlib\pyplot.py", line 31, in <module>
File "Lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 396, i
n load_module
File "site-packages\matplotlib\colorbar.py", line 36, in <module>
File "Lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 396, i
n load_module
File "site-packages\matplotlib\contour.py", line 20, in <module>
File "Lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 396, i
n load_module
File "site-packages\matplotlib\font_manager.py", line 55, in <module>
File "Lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 687, i
n load_module
ImportError: DLL load failed: The specified procedure could not be found.
[5532] Failed to execute script Main
经过一些研究,我发现dll
导致问题的原因是zlib.dll
,它似乎pyInstaller
没有收集正确的信息zlib.dll
,因为当我尝试手动添加到zlib.dll
文件夹时,我的应用程序运行完美。\my\path\to\anaconda\Library\bin
.exe
我正在使用Python=2.7
, Anaconda=5.2.0
, pyInstaller=3.3.1
.
解决方案
推荐阅读
- c# - C#:如何在刻度中间停止计时器
- c# - 通过匹配两个字符串但消除动词和其他一些特定单词(如“the, they, there they etc”)来生成结果?
- java - 如何在java中只增加图像宽度
- ios - 在不上传 App Store 的情况下,我们可以在 TestFlight 中上传 iOS 应用多少次?
- java - 如何替换arraylist中的元素包含作为stringbuilder类型的字符串的元素
- java - 将 java xml sax 事件调用转换为 xml 字符串
- asp.net-core - 静态记录器 aspnetcore webapi serilog
- php - PHP 使用 OOP 防止 SQL 注入
- android - 实施 'com.android.support:appcompat-v7:27.1.1' 失败
- c++ - C++ 系统命令编辑器