繁体   English   中英

在 Windows 上安装 GDCM -- ImportError

[英]Installing GDCM on Windows -- ImportError

我正在尝试在 Windows (10, x64) 上安装 GDCM,这样我就可以使用 GDCM package 和 Python 和 3.6.

我尝试了以下每种组合:

  • 安装 GDCM-2.8.7-Windows-x86_64, GDCM-2.8.7-Windows-x86.exe, GDCM-2.8.4-Windows-x86.exe (当然要分开安装)
  • 添加到 PYTHONPATH:C:\Program Files\Python36; C:\Program Files\Python36\Lib; C:\Program Files\Python36\DLLs; C:\Program Files\Python36\Scripts; C:\Program Files\GDCM 2.8; C:\Program Files\GDCM 2.8\lib; C:\Program Files\GDCM 2.8\bin; C:\Program Files\GDCM 2.8\include; C:\Program Files\GDCM 2.8\(甚至 PYTHONHOME)
  • 将文件 gdcm.py、gdcmswig.py 和 _gdcmswig.pyd 复制到站点包和 DLL 中

我能得到的最好的是将上述文件复制到站点包,这允许 python 检测 gdcm package (当文件从站点包中删除时它什么也没检测到),但返回错误:

>>> import gdcm
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\Program Files\Python36\lib\site-packages\gdcm.py", line 68, in 
<module>
from gdcmswig import *
File "C:\Program Files\Python36\lib\site-packages\gdcmswig.py", line 20, in 
<module>
_gdcmswig = swig_import_helper()
File "C:\Program Files\Python36\lib\site-packages\gdcmswig.py", line 19, in 
swig_import_helper
return importlib.import_module(mname)
File "C:\Program Files\Python36\lib\importlib\__init__.py", line 126, in 
import_module
return _bootstrap._gcd_import(name[level:], package, level)
ImportError: DLL load failed: The specified module could not be found.

安装 _x86 版本会返回错误“%1 不是有效的 Win32 应用程序”。

我下载了dependencyWalker来分析_gdcmswig.pyd,但从中我无法理解太多。 问题不在于 MSVCP100.dll,因为我安装了 vc_redist_x64。 它确实提到了 Python34.dll,但下面的答案得到了在 Python 3.6 上工作的完全相同的安装程序。

提到的解决方案: 如何在 Windows 系统上安装 gdcm python 包装? 对我不起作用。

最后,我无法让 python 从 Program Files/GDCM 2.8/bin 中检测 package,无论 PATH、PYTHONPATH 或 PYTHONHOME 中有什么; 我不知道这是否正常。

我花了几个小时在这上面,但无济于事; 任何帮助是极大的赞赏。

对于后代:

对我来说,问题似乎确实是官方提供的二进制文件是针对Python 3.4编译的; 我不知道这个人如何在Python 3.6上获得相同的安装程序。

解决方法是自己构建软件包二进制文件 没有“一键式”解决方案。 对于我在解决此问题时的令人费解的冒险之旅,请参阅: https//motivatedbylaziness.wordpress.com/2018/07/06/the-impossible-journey-of-a-simple-task/

我最近遇到了这个问题,我使用以下方法解决了它:

python -m pip install python-gdcm

看来今天(2022)有“一键式”解决方案

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM