为给定版本的Python构建扩展模块需要什么版本的Visual Studio和/或MinGW? 用不同的方式来提出这个问题,Python的每个官方构建版本是VisualC++,VisualC++的版本是什么版本的?

为给定版本的Python构建扩展模块需要什么版本的Visual Studio和/或MinGW? 用不同的方式来提出这个问题,Python的每个官方构建版本是VisualC++,VisualC++的版本是什么版本的?,python,c,windows,visual-studio,build,Python,C,Windows,Visual Studio,Build,这些信息在某些网站上可以随时获得吗?您可能正在讨论一个需求,即构建Python扩展以动态链接到Python实例所使用的同一个C运行时库。首先应该注意的是,这取决于实例是如何构建的,也就是说,如果您自己从源代码构建Python,那么确定所使用的运行库的是用于构建的编译器版本,而不是Python版本 如果您想知道官方二进制版本的运行时库版本,可以使用您最喜欢的DLL依赖项工具(例如,或查看安装程序中包含哪些可重新发行的运行时库)自行解决此问题 基于我的简短研究,我相信您可以将最新版本的MinGW与这

这些信息在某些网站上可以随时获得吗?

您可能正在讨论一个需求,即构建Python扩展以动态链接到Python实例所使用的同一个C运行时库。首先应该注意的是,这取决于实例是如何构建的,也就是说,如果您自己从源代码构建Python,那么确定所使用的运行库的是用于构建的编译器版本,而不是Python版本

如果您想知道官方二进制版本的运行时库版本,可以使用您最喜欢的DLL依赖项工具(例如,或查看安装程序中包含哪些可重新发行的运行时库)自行解决此问题


基于我的简短研究,我相信您可以将最新版本的MinGW与这些运行库中的任何一个一起使用。默认情况下,它使用Windows内置的C运行时msvcrt.dll,但它似乎支持使用VC++运行时。

每个Python版本的源发行版中的文件
PCbuild\readme.txt
包括用于生成二进制文件的Visual Studio版本。

Python2.6、2.7、3.1和3.2都是用VS2008编译的。Python 3.3和3.4是使用VS2010编译的

我不确定MinGW的兼容性

如果您正在寻找命令行编译器,Microsoft已经为Windows 7发布了两个不同的SDK,其中包括命令行编译器。第一个SDK(针对.NET3.5)包括VS2008编译器。第二个SDK(适用于.NET4.0)包括VS2010编译器


更新:Python的每个版本的源分布中的文件<代码> PCBux.ReMe.txt/Cuth>包括用于制作二进制文件的VisualStudio版本。

< P>如果在2020中有人对此感兴趣:我找到了这个(更新的)页面,列出了Visual C++编译器版本(以及包含它们的VisualStudio版本)用于每个CPython版本:


ABI需要兼容。除此之外,我对此没有答案。看,2.5呢?有没有关于这些信息的公共资源可供参考,以便我在发布新的Python版本时了解它?当Python 3.3问世时,它将使用什么版本?还有Python 3.4?在哪里可以找到这些信息?每个Python版本的源发行版中的文件PCbuild\readme.txt都包含用于生成二进制文件的Visual Studio版本。您应该在回答的上述部分而不是注释。对于Visual Studio,这不仅是用于构建Python解释器的编译器版本,而且是调试版本还是发布版本,因为每个版本都使用不同的运行时库,并且您构建的任何扩展都需要在这方面匹配。谢谢!我确实仍然关心这一点;感谢您提供帐户以回答此问题:)