我一直在编译 C 库,并链接 Python3 库文件以进行 Python 绑定(bind)。我一直在使用 python39.lib 文件作为链接,但我想知道“版本化”数字(例如 python3x.lib)与非版本化数字(python3.lib)之间有什么区别。
在回答问题时,忘记提及这是使用 gcc 在 Windows 上编译的。
谢谢
最佳答案
python3.lib
仅包含 cpython 程序(或 Python 的 C 扩展)使用的关键库函数。 python3x.lib
(例如python38.lib
、python39.lib
)包含完整的库函数。您应该链接到 python3.lib
,以便您的构建配置不会受到次要 Python 版本升级(例如从 3.8 升级到 3.9)的影响。
链接非常依赖于平台和编译器。请参阅 PC/pyconfig.h
中的代码注释(请参阅引用文献 [3])。
其他信息
关于python - Python安装libs文件夹中的python3.lib和python3x.lib有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65918923/