Я пытаюсь использовать Cython для оболочки класса C++. В основном я следую примеру this page.ImportError: Ошибка загрузки DLL: недействительное приложение Win32
Я использую Windows7 64-bit
, Python 2.7.4 64-bit
, MinGW 4.3.3 (32/64bit)
и SDK
был установлен в x64 mode
.
В этом случае я успешно создаю файл .pyd. Я попытался импортировать его со следующим кодом:
import sys
sys.path.append("C:\\Rectangle")
import rect
Первые две линии хорошо работают. Когда я ввода третьей строки, он дал следующее сообщение:
Traceback (most recent call last):
File "<pyshell#2>", line 1, in <module>
import rect
ImportError: DLL load failed: %1 is not a valid Win32 application.
Я скомпилировал расширение в 64-разрядном режиме, и каждая часть программного обеспечения, который я использовал, по крайней мере, совместим с 64-битной. Как могла произойти такая ошибка?
Могу ли я знать, как я могу обойти это?
Большое спасибо! :-)
кажется, что проблема заключается в том, что вы компилируете с помощью MinGW, вы должны с помощью SDK скомпилировать ... это необходимо, чтобы заставить код работать в 64-разрядной версии Windows 7. Можете ли вы скомпилировать другие коды Cython в вашей текущей программной + аппаратной конфигурации? –