Python在哪里查找库二进制文件?

5
我正在尝试将Python库(fontforge)捆绑在一起,以便我的脚本在没有安装该库但安装了Python的机器上运行。目前我已经尝试将与“缺失库”错误对应的“.so”文件复制到当前目录,虽然对于某些情况可以运行,但对于其他情况则不行,即使我在当前目录中有libgunicode.so,也会提示“缺失库:libgunicode”。是否有一些设置可以调整,以便找到它?
编辑:我使用的是Ubuntu。
更新:我通过设置LD_LIBRARY_PATH=., 然后将“.so”文件复制到当前目录,直到我没有更多的“库未找到”消息为止,最终使它工作了。

关于您的平台的详细信息会很有帮助。 - robert
不确定这是否有用,但您可以通过使用 sys.path.append("/home/me/mypy") 将模块添加到脚本路径。 - Richard J
我认为更加优雅的做法是像这样添加所有所需路径:LD_LIBRARY_PATH="/path/to/lib1:/path/to/lib2:$LD_LIBRARY_PATH" - Arne L.
1个回答

5

假设您使用的是Linux操作系统,系统会在列在/etc/ld.so.conf/etc/ld.so.conf.d/*$LD_LIBRARY_PATH中的目录中查找共享对象。


1
以下是所有细节:https://docs.python.org/3/library/ctypes.html#finding-shared-libraries - Arne L.

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接