Установка GDCM в Windows - ImportError - PullRequest
0 голосов
/ 05 июля 2018

Я пытаюсь установить GDCM в Windows (10, x64), чтобы я мог использовать пакет GDCM с Python 3.6.5, и считаю его абсолютно невозможным.

Я пробовал каждую комбинацию:

  • Установка 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 (когда файлы удаляются из пакетов сайта, он ничего не обнаруживает), но возвращает ошибку:

>>> 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».

Я загрузил зависимость Walker для анализа _gdcmswig.pyd, но из этого я не могу понять многое. Проблема не в MSVCP100.dll, так как у меня установлен vc_redist_x64. В нем упоминается Python34.dll, но ответ ниже получил тот же самый установщик, работающий на Python 3.6.

Решение, упомянутое по адресу: как установить упаковку gdcm python в системе Windows? у меня не работает.

Наконец, я не могу заставить python обнаружить пакет из Program Files / GDCM 2.8 / bin, независимо от того, что находится в PATH, PYTHONPATH или PYTHONHOME; Я не знаю, нормально это или нет.

Я потратил на это часы, но безрезультатно; любая помощь очень ценится.

1 Ответ

0 голосов
/ 03 августа 2018

для потомков:

Мне кажется, проблема заключалась в том, что официальные бинарные файлы были скомпилированы для Python 3.4; Я понятия не имею, как этот человек получил тот же установщик, работающий на Python 3.6.

Решением было собрать двоичные файлы пакета самостоятельно ; не было никакого решения "одним щелчком". Для моего смехотворно запутанного приключения в устранении этой проблемы см .: https://motivatedbylaziness.wordpress.com/2018/07/06/the-impossible-journey-of-a-simple-task/

...