美文网首页
linux 设置So动态库链接路径

linux 设置So动态库链接路径

作者: 不玩了啊 | 来源:发表于2020-03-12 20:21 被阅读0次

    https://yq.aliyun.com/articles/339743

    python的包Rtree(Rtree-0.8.2),但需要先安装C语言依赖包spatialindex-src(spatialindex-src-1.8.5)。在安装完spatialindex-src后,再安装Rtree过程中出现问题:

    dimite@ubuntu:~/wzh/Rtree-0.8.2$ python setup.py build

    Traceback (most recent call last):

      File "setup.py", line4,in    import rtree

      File "/home/dimite/wzh/Rtree-0.8.2/rtree/__init__.py", line1,in    from .index import Rtree

      File "/home/dimite/wzh/Rtree-0.8.2/rtree/index.py", line6,in    from . import core

      File "/home/dimite/wzh/Rtree-0.8.2/rtree/core.py", line106,in    rt = ctypes.CDLL(lib_name)

      File "/usr/lib/python2.7/ctypes/__init__.py", line365,in __init__

        self._handle = _dlopen(self._name, mode)

    OSError: libspatialindex_c.so.4: cannot open sharedobjectfile: No suchfileor directory

    错误日志提示找不到动态链接库 libspatialindex_c.so.4,利用命令寻找动态链接库

    dimite@ubuntu:~/wzh/Rtree-0.8.2$sudofind/ -name libspatialindex_c.so.4[sudo] passwordfor dimite: /usr/local/lib/libspatialindex_c.so.4/home/dimite/wzh/spatialindex-src-1.8.5/.libs/libspatialindex_c.so.4

    需要四个动态链接库文件,都在/usr/local/lib中

    dimite@ubuntu:~/wzh/Rtree-0.8.2$ls/usr/local/lib |greplibspatialindex |grep so

    libspatialindex_c.so

    libspatialindex_c.so.4libspatialindex_c.so.4.0.1libspatialindex.so

    libspatialindex.so.4libspatialindex.so.4.0.1

    回到顶部

    解决

    方法一:

    把动态链接库所在的路径添加到/etc/ld.so.conf中

    include /etc/ld.so.conf.d/*.conf

    /usr/local/lib/

    然后更新/etc/so.cache

    sudoldconfig

    方法二:

    同方法一,把具体的so链接库写到/etc/ld.so.conf.d/下的conf文件中

    /usr/local/lib/

    方法三:

    设置$LD_LIBRARY_PATH=库所在目录(多个目录用:分隔)

    回到顶部

    结论

    以root身份把库路径加入到/etc/ld.so.conf或在/etc/ld.so.conf.d中创建特定的.conf文件,运行ldconfig更新动态链接库

    设置$LD_LIBRARY_PATH=库所在目录(多个目录用:分隔)

    回到顶部

    深究

    python怎么调用c的库

    python的setup.py 怎么执行,里边没有看到具体的build、install字眼

    ctype里的__init__.py又是怎么和动态链接库a联系在一起

    相关文章

      网友评论

          本文标题:linux 设置So动态库链接路径

          本文链接:https://www.haomeiwen.com/subject/gopwjhtx.html