我正在尝试将Python 3库开发为C扩展。我在Windows 10上,我安装了Python 3.5.2 64位作为我唯一的Python发行版。我也安装了Visual Studio 2017。
这个库依赖于glew和glfw。我相信我已经正确安装了库,我已经在
中安装了它们的标题C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include\
中的
.lib
个文件
C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\lib
以及
中的.dll
个文件
C:\Windows\System32
我的setup.py
文件看起来基本上是这样的:
module = Extension('my_library',
library_dirs=['C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\lib'],
libraries=['glew32', 'glfw3'],
sources=['my_library/c/my_library.c'])
setup(name="MyLibrary",
version="0.1",
description="My Python 3 Library",
ext_modules=[module])
当我运行python setup.py build
时,我会收到
MSVCRT.lib(chkstk.obj) : fatal error LNK1112: module machine type 'X86' conflicts with target machine type 'x64'
error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\BIN\\x86_amd64\\link.exe' failed with exit status 1112
好的,所以我真的不确定这意味着什么,因为我的机器是64位......但它是x86架构。但我认为这意味着我没有针对64位,所以我在线阅读并找到了this answer,它说要运行
set DISTUTILS_USE_SDK=1
set MSSdk=1
使用" Visual Studio 2008 x64 Win64命令提示符",我没有。我尝试了其他命令提示,他们要么给出相同的错误,要么给出
Compiling Desktop applications for the ARM platform is not supported.
当我在常规命令提示符下尝试设置DISTUTILS_USE_SDK
方法时,收到错误
python\python35\include\pyconfig.h(68): fatal error C1083: Cannot open include file: 'io.h': No such file or directory
我真的不确定从哪里开始。我只是希望能够链接glew / glfw。当glew / glfw未被包含/链接时,该模块最初正在编译并正常工作。
感谢您的任何建议