gpt4 book ai didi

python - 使用 pybind11 链接其他共享库构建库

转载 作者:太空宇宙 更新时间:2023-11-04 12:32:21 25 4
gpt4 key购买 nike

我的项目回复了一个 SO 文件,我将通过 cmake 安装在我的项目文件夹下。当我运行 python setup.py install

但是我是pip安装的,因为pip会把工程拷贝到一个tmp文件中,安装完会被移除,SO文件也会被移除。因此,当我导入我的项目时,由于找不到 SO 文件而失败。

当然,我可以把SO文件安装到/usr/local/lib,但是我不想

谁有解决办法?

最佳答案

您需要让您的共享库在运行时可被发现。适用于常规 C++ 可执行文件的规则相同。

这里有几个选项(列表可能不完整):

  • 将共享库与其他共享库一起放置(例如 /usr/lib/)
  • 将带有共享库路径的自定义 conf 添加到 /etc/ld.so.conf.d/my_lib.conf
  • 在调用 python 解释器之前设置 LD_LIBRARY_PATH
  • 使用LD_PRELOAD运行python解释器
  • 将共享库的路径设置为 pybind11 模块的 RPATH 属性。

我个人use后一种选择:它允许我自由使用 virtualenv

关于python - 使用 pybind11 链接其他共享库构建库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58169758/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com