python - 分发独立的 libpython 路径

标签 python linux path

在较新的 Ubuntu/Debian 版本下,libpython2.7.so 位于 /usr/lib/i386-linux-gnu/libpython2.7.so/usr/lib/x86_64-linux-gnu/libpython2.7.so等,早前可以在/usr/lib/libpython2.7.so中找到,没有重要的架构。我还没有检查其他发行版。 python如何找到libpython2.7.so的路径?

最佳答案

使用 pkg-config 不是最好的选择——它不会区分不同的 Python 安装,只返回系统安装。您最好使用 Python 可执行文件来发现 libpythonX.Y.so 的位置。

从 Python 内部:

   from distutils import sysconfig;
   print sysconfig.get_config_var("LIBDIR")

或者在 Makefile 中:

   PYTHON_LIBDIR:=$(shell python -c 'from distutils import sysconfig; print sysconfig.get_config_var("LIBDIR")')

这将从 $PATH 中最先出现的任何 Python 可执行文件中发现位置,因此如果系统上安装了多个 Python,它也能正常工作。

归功于 Niall Fitzgerald感谢您指出这一点。

关于python - 分发独立的 libpython 路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20582270/

相关文章:

python - 使用 BeautifulSoup 和列表从维基百科的信息框中提取特定文本的最佳方法是什么?

python - 更新外键时,Django 信号不会更新相关模型

c++ - 确保 fsync 完成其工作

java - 当我希望用户在我的网站上上传文件时,我的路径应该是什么?

java - Java路径困惑-我可能会使情况更糟

python - virtualenv 到 Windows 10 上的路径

python - 在 matplotlib 中结合对数和线性刻度

Python ValueError 是否可以在不进行字符串解析的情况下获得不正确的值?

linux - 错误: undefined reference

linux - 如何通过SLIP、串口向wifi模块发送命令?