【发布时间】:2020-07-23 19:43:05
【问题描述】:
我的问题是:
我正在尝试打包一个下面提到的具有 import ibm_db 的简单代码,但我无法做到这一点,因为它给了我下面提到的错误。我在 SO 和其他网站上进行了很多研究,但是我遇到的大多数解决方案都说使用 --add-binary 添加 DLL,我也尝试过,但是仍然出现下面提到的错误.
我使用的是 Windows 10 64 位操作系统,基于 x64 的处理器。
我正在使用使用 python -m venv env
创建的虚拟环境
下面提到的包安装在我的虚拟环境中。
我希望所有这些细节都足够了,并且可以作为一个问题。
-- Python 版本--
Python 3.7.8
-- 已安装 PYTHON 包--
altgraph 0.17
未来 0.18.2
ibm-db 3.0.2
pefile 2019.4.18
点 20.1.1
PyInstaller 3.6
pywin32-ctypes 0.2.0
安装工具 47.1.0
-- 我的代码--
import ibm_db<br>
print(ibm_db.`__version__`)<br>
-- 使用 PYINSTALLER 为我上面的代码创建包 --
pyinstaller --noconfirm ^
--name=test ^
--hidden-import "pkg_resources.py2_warn" ^
--add-binary C:\Users\vrajendrasinghpar\Desktop\test\env\Lib\site-packages\ibm_db_dlls\ibm_db.dll;.\ibm_db_dlls ^
test_ibm_db.py
-- 得到以下错误--
Traceback (most recent call last):<br>
File "test\test_ibm_db.py", line 1, in `<module>`<br>
File "c:\users\vrajendrasinghpar\desktop\test\env\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 623, in exec_module<br>
exec(bytecode, module.`__dict__`)<br>
File "lib\site-packages\ibm_db.py", line 28, in `<module>`<br>
File "lib\site-packages\ibm_db.py", line 26, in `__bootstrap__`<br>
File "imp.py", line 345, in load_dynamic<br>
ImportError: DLL load failed: The specified module could not be found.<br>
[27420] Failed to execute script test_ibm_db<br>
【问题讨论】:
-
请编辑您的问题以添加事实(请不要使用 cmets,它们会丢失且不可搜索)。什么 MS-Windows 版本?哪个版本?它是 32 位 Windows 吗? MS-Windows 是在虚拟机还是 docker 容器中运行?运行 pyinstaller 的主机名是否与您运行构建的 EXE 的主机名相同?
标签: python db2 pyinstaller