我可以将MinGW编译的Python扩展与Visual C ++编译的扩展一起使用吗?

时间:2013-12-20 19:18:47

标签: python windows compilation python-extensions

在Windows下编译Python扩展时遇到问题,我问过a question。其中一个答案没有回答我的问题,但值得问一个问题。

鉴于在Windows下使用Visual C ++编译的Python发行版,如果我使用Visual C ++编译的扩展以及MinGW编译的扩展,我会遇到任何问题吗?

这将允许我在配置MS编译器时更容易使用MinGW。

1 个答案:

答案 0 :(得分:-1)

它没有得到官方支持,但我认为它应该有效。 Python公开extern "C"函数(使用C链接),因此您应该能够从MSVC中调用它们。但那只是Python本身。扩展怎么样? PyMODINIT_FUNC中还包含extern "C",因此也允许从MSVC调用它。您通过函数指针传递给Python的函数也应该起作用,因为它们默认使用cdecl调用约定,但不需要C链接(或C名称重整),因为它们是由指针调用的。总而言之,它应该是Just Work™。