ImportError:无法使用Anaconda python找到共享库:libhdfs3.so

使用以下版本的Python:

   (base) [xxxx@xxx-xxx-000 lib]# python
    Python 3.7.3 (default,Mar 27 2019,22:11:17)
    [GCC 7.3.0] :: Anaconda,Inc. on linux
    Type "help","copyright","credits" or "license" for more information.

可用的conda软件包:

(base) [xxxx@xxx-xxx-000 lib]# conda list hdfs3
WARNING: The conda.compat module is deprecated and will be removed in a future release.
# packages in environment at /opt/anaconda3:
#
# Name                    Version                   Build  Channel
hdfs3                     0.3.1                    py37_0    <unknown>
libhdfs3                  2.3               h311b756_1006    <unknown>

导入python软件包:

>>> from hdfs3 import HDFileSystem
>>> hdfs = HDFileSystem(host='localhost',port=8020)
Traceback (most recent call last):
  File "<stdin>",line 1,in <module>
  File "/opt/anaconda3/lib/python3.7/site-packages/hdfs3/core.py",line 88,in __init__
    self.connect()
  File "/opt/anaconda3/lib/python3.7/site-packages/hdfs3/core.py",line 106,in connect
    get_lib()
  File "/opt/anaconda3/lib/python3.7/site-packages/hdfs3/core.py",line 670,in get_lib
    from .lib import _lib as l
  File "/opt/anaconda3/lib/python3.7/site-packages/hdfs3/lib.py",line 24,in <module>
    raise ImportError("Can not find the shared library: libhdfs3.so\n"
ImportError: Can not find the shared library: libhdfs3.so

它实际上在哪个位置检查共享库?我已使用以下详细信息设置了LD_libraRY_PATH和PATH的位置。

(base) [xxxx@xxx-xxx-000 lib]# python -c "import sys; print(sys.path)"
['','/opt/anaconda3/lib/python37.zip','/opt/anaconda3/lib/python3.7','/opt/anaconda3/lib/python3.7/lib-dynload','/opt/anaconda3/lib/python3.7/site-packages']

(base) [xxxx@xxx-xxx-000 lib]# echo $LD_libraRY_PATH
/opt/anaconda3/lib/:/home/zeppelin/.conda/pkgs/glog-0.4.0-he1b5a44_1/lib/:/opt/anaconda3/pkgs/glog-0.4.0-he1b5a44_1/lib/:/usr/local/lib/:/usr/local/lib:/opt/anaconda3/lib/:/home/zeppelin/.conda/pkgs/glog-0.4.0-he1b5a44_1/lib/:/opt/anaconda3/pkgs/glog-0.4.0-he1b5a44_1/lib/

libhdfs3.so在我的服务器中的位置如下:

    (base) [xxxx@xxx-xxx-000 lib]# sudo find / -name libhdfs3.so
    /opt/anaconda3/lib/libhdfs3.so
    /opt/anaconda3/pkgs/libhdfs3-2.3-h311b756_1006/lib/libhdfs3.so
    /opt/anaconda2/lib/libhdfs3.so
    /opt/anaconda2/pkgs/libhdfs3-2.3-h311b756_1006/lib/libhdfs3.so

以下是ldd命令的输出:

(base) [xxxx@xxx-xxx-000 pandas]# ldd /opt/anaconda3/lib/libhdfs3.so
/opt/anaconda3/lib/libhdfs3.so: /opt/anaconda3/lib/./libuuid.so.1: no version information available (required by /opt/anaconda3/lib/libhdfs3.so)
        linux-vdso.so.1 =>  (0x00007fffb18bc000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f369138f000)
        libuuid.so.1 => /opt/anaconda3/lib/./libuuid.so.1 (0x00007f369118b000)
        libprotobuf.so.19 => not found
        libxml2.so.2 => /opt/anaconda3/lib/./libxml2.so.2 (0x00007f3691987000)
        libkrb5.so.3 => /opt/anaconda3/lib/./libkrb5.so.3 (0x00007f36910af000)
        libgsasl.so.7 => not found
        libcrypto.so.1.1 => /opt/anaconda3/lib/./libcrypto.so.1.1 (0x00007f3690db7000)
        libcurl.so.4 => /opt/anaconda3/lib/./libcurl.so.4 (0x00007f3690d2f000)
        libstdc++.so.6 => /opt/anaconda3/lib/./libstdc++.so.6 (0x00007f3690bee000)
        libgcc_s.so.1 => /opt/anaconda3/lib/./libgcc_s.so.1 (0x00007f3691970000)
        libc.so.6 => /lib64/libc.so.6 (0x00007f3690821000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f36918e1000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00007f369061d000)
        libicuuc.so.58 => /opt/anaconda3/lib/././libicuuc.so.58 (0x00007f369026f000)
        libz.so.1 => /opt/anaconda3/lib/././libz.so.1 (0x00007f369194e000)
        liblzma.so.5 => /opt/anaconda3/lib/././liblzma.so.5 (0x00007f3690049000)
        libm.so.6 => /lib64/libm.so.6 (0x00007f368fd47000)
        libk5crypto.so.3 => /opt/anaconda3/lib/././libk5crypto.so.3 (0x00007f369192e000)
        libcom_err.so.3 => /opt/anaconda3/lib/././libcom_err.so.3 (0x00007f3691928000)
        libkrb5support.so.0 => /opt/anaconda3/lib/././libkrb5support.so.0 (0x00007f3691919000)
        libresolv.so.2 => /lib64/libresolv.so.2 (0x00007f368fb2e000)
        libssh2.so.1 => /opt/anaconda3/lib/././libssh2.so.1 (0x00007f368fafd000)
        libssl.so.1.1 => /opt/anaconda3/lib/././libssl.so.1.1 (0x00007f368fa67000)
        libgssapi_krb5.so.2 => /opt/anaconda3/lib/././libgssapi_krb5.so.2 (0x00007f368fa18000)
        librt.so.1 => /lib64/librt.so.1 (0x00007f368f810000)
        libicudata.so.58 => /opt/anaconda3/lib/./././libicudata.so.58 (0x00007f368dd10000)
edward217 回答:ImportError:无法使用Anaconda python找到共享库:libhdfs3.so

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3158610.html

大家都在问