【发布时间】:2017-09-23 22:46:54
【问题描述】:
是否有任何独立于平台的方法来获取 python 安装的 libpython 的路径,以用作 cmake 参数? sysconfig.get_config_var 给出了一些片段,但我没有一致的方法可以让它工作。
在 OSX 上:
- 没有变量包含库的实际基本名称 (libpython2.7.dylib)
-
sysconfig.get_config_var('LIBDIR')返回 libpython2.7.dylib 所在目录 (/usr/local/opt/python/Frameworks/Python.framework/Versions/2.7/lib) -
编辑:sysconfig 报告符号链接和报告真实路径时似乎存在一些差异。
LIBDIR实际上包含 libpython.2.7.dylib,但我刚刚注意到这是 /usr/local/Cellar/python/2.7.13_1/Frameworks/Python.framework/Versions/2.7/Python 的符号链接。INSTSONAME指向 Python.framework/Versions/2.7/Python,该路径的基本名称,但我找不到指向该路径父部分的变量。
在 Ubuntu 上:
-
sysconfig.get_config_var('INSTSONAME')给了我库的名称 (libpython2.7.so.1.0)。 - 没有变量包含它所在的目录 (/usr/lib/x86_64-linux-gnu/)。
-
LIBDIR只返回 /usr/lib
-
【问题讨论】: