首页 > 解决方案 > 设置 LD_LIBRARY_PATH 是确保加载 python 包的共享库的最佳方法吗?

问题描述

我有一个 python 轮,其中包含共享库*.so以及 python 模块。这些共享库是使用setuptools.command.build_ext[via cmake] 创建的。

安装轮子后

pip install <name>.whl

所有 python 包都安装在其中,/opt/conda/lib/python3.6/site-packages/<package>/而共享库安装在/opt/conda/lib/python3.6/site-packages

但是,默认情况下 LD_LIBRARY_PATH 不搜索/opt/conda/lib/python3.6

作为 python 包安装的一部分,强制用户更新LD_LIBRARY_PATH以指向包含共享库的目录是否被认为是最佳实践?或者有没有更好的方法在编译时处理它,以便用户[不编译它但只安装python包]可以访问共享库而不更新LD_LIBRARY_PATH

标签: pythoncmakesetuptools

解决方案


推荐阅读