已安装的库中缺少编译的cpython文件

2024-09-24 22:22:13 发布

您现在位置:Python中文网/ 问答频道 /正文

我们使用的库依赖于另一个名为Jellyfish的库。该库实现了逻辑,如果有cpython版本,它将导入该版本。否则,它将使用pypy版本

Pypy有一个已知的问题(参考:https://github.com/jamesturk/jellyfish/issues/46),其中变音库的Pypy实现与cpython版本不一致

在我同事的虚拟环境中,他们都有安装时创建的文件cjellyfish.cpython-34m.so,但我没有。因此,我的代码的行为与他们的不同(我们最终会在try/except的另一边:https://github.com/jamesturk/jellyfish/blob/master/jellyfish/init.py

我很好奇为什么我的系统没有cjellyfish.cpython-34m.so文件,而其他系统有。诚然,这可能是因为我不太熟悉pip安装过程的一部分以及编译可能发生的阶段

所以我有几个问题,所有这些都可能是相关的: 1) 你能想到什么会导致文件无法生成吗? 2) 在编译失败的情况下,是否有一个地方可以查找错误/日志消息? 3) 有人能给我解释一下或者给我指出一个资源,关于生成编译的cpython.so文件的pip install somelibrary过程中发生了什么

我的系统信息:

  • Ubuntu 18.04版
  • 在pyenv中运行的python3.4.3
  • 平台版本是#45-Ubuntu SMP Thu Nov 15 19:32:57 UTC 2018
  • platform.python_implementation()CPython本地的(与我同事的匹配)
  • platform.python_compiler()是“gcc7.3.0”,与我的同事不同(例如GCC 4.4.7 20120313 (Red Hat 4.4.7-11)

Tags: pip文件https版本githubcomso过程
1条回答
网友
1楼 · 发布于 2024-09-24 22:22:13

1该问题已修复并解决

2您应该检查pip install log /tmp/metaphone.txt ignore-installed metaphone/tmp/metaphone.txt日志文件的输出,看看是否缺少构建*.so所需的组件

相关问题 更多 >