Python C扩展模块中的“ PYVERNODOTS”是什么意思?

时间:2019-08-13 08:22:42

标签: python python-c-api

当我想在Linux上编译Python C扩展模块时,已编译模块的文件名例如为<name-of-module>.cpython-@PYVERNODOTS@m-x86_64-linux-gnu.so。但是,只有在我为Python 3.7编译时,这才发生。在Python 3.6中,文件名是<name-of-module>.cpython-36m-x86_64-linux-gnu.so。 问题是,Python 3.7无法导入文件名中带有PYVERNODOTS的模块,所以这是我的问题: PYVERNODOTS是什么意思?如何解决导入问题?

编辑:

我在Ubuntu上使用Anaconda的Python 3.7.4对其进行了测试。完整的设置脚本位于https://github.com/biotite-dev/biotite/blob/master/setup.py

1 个答案:

答案 0 :(得分:1)

这似乎是Python 3.7.4的问题。在Python 3.7.3下运行编译可解决此问题。