python - Python C 扩展模块中的“PYVERNODOTS”是什么意思?
问题描述
当我想在 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
意思?如何解决导入问题?
编辑:
我使用 Anaconda 的 Python 3.7.4 在 Ubuntu 上对此进行了测试。完整的设置脚本位于https://github.com/biotite-dev/biotite/blob/master/setup.py。
解决方案
这似乎是 Python 3.7.4 的一个问题。在 Python 3.7.3 下运行编译解决了这个问题。
推荐阅读
- android-studio - Google Maps Flutter 插件方法未按预期工作
- android - 使用来自 Activity 的导航传递给片段
- excel - 在表格中添加缺失的行 (Excel)
- javascript - 未捕获的类型错误:在进行随机图像选举时无法将属性“src”设置为 null
- python - Flask:如何从服务器中删除文件
- azure - 如何将参数传递给应用服务的源代码管理?
- javascript - head.appendChild 在控制台中给出错误但工作正常
- user-interface - 用于 UI 开发的 Julia 包
- android-studio - 如何在 Flutter/Dart 中访问相机本身?
- java-8 - 将列表转换为可能