我在自己的Linux环境下安装了libhdfs3,发现不工作,提示找不到hdfs3这个库
于是按照网上的提示,先尝试用pip来安装解决,但是发现还是无解!
pip install hdfs3
...
Installing collected packages: hdfs3
Successfully installed hdfs3-0.3.0
于是我转向anaconda2: https://www.anaconda.com/download/#macos
找到对应的installer安装,总算安装成功
Appending source /home/training/anaconda2/bin/activate to /home/training/.bashrc
A backup will be made to: /home/training/.bashrc-anaconda2.bak
For this change to become active, you have to open a new terminal.
Thank you for installing Anaconda2!
开始安装hdfs3
conda install libhdfs3
## Package Plan ##
environment location: /home/training/anaconda2
added / updated specs:
- libhdfs3
The following packages will be downloaded:
package | build
---------------------------|-----------------
libprotobuf-3.5.2 | h6f1eeef_0 4.2 MB
libboost-1.67.0 | h46d08c1_4 20.9 MB
libhdfs3-2.3.0 | hd191362_1 8.5 MB
conda-4.5.11 | py27_0 1.0 MB
krb5-1.14.2 | hcdc1b81_6 1.4 MB
libntlm-1.4 | h14c3975_2 33 KB
libgsasl-1.8.0 | h14c3975_3 132 KB
libgpg-error-1.32 | hf484d3e_0 248 KB
libgcrypt-1.8.3 | h14c3975_0 608 KB
libuuid-1.0.3 | h1bed415_2 16 KB
------------------------------------------------------------
Total: 37.0 MB
The following NEW packages will be INSTALLED:
krb5: 1.14.2-hcdc1b81_6
libboost: 1.67.0-h46d08c1_4
libgcrypt: 1.8.3-h14c3975_0
libgpg-error: 1.32-hf484d3e_0
libgsasl: 1.8.0-h14c3975_3
libhdfs3: 2.3.0-hd191362_1
libntlm: 1.4-h14c3975_2
libprotobuf: 3.5.2-h6f1eeef_0
libuuid: 1.0.3-h1bed415_2
The following packages will be UPDATED:
conda: 4.5.4-py27_0 --> 4.5.11-py27_0
Proceed ([y]/n)? y
Downloading and Extracting Packages
libprotobuf-3.5.2 | 4.2 MB | ################################################################################## | 100%
libboost-1.67.0 | 20.9 MB | ################################################################################## | 100%
libhdfs3-2.3.0 | 8.5 MB | ################################################################################## | 100%
conda-4.5.11 | 1.0 MB | ################################################################################## | 100%
krb5-1.14.2 | 1.4 MB | ################################################################################## | 100%
libntlm-1.4 | 33 KB | ################################################################################## | 100%
libgsasl-1.8.0 | 132 KB | ################################################################################## | 100%
libgpg-error-1.32 | 248 KB | ################################################################################## | 100%
libgcrypt-1.8.3 | 608 KB | ################################################################################## | 100%
libuuid-1.0.3 | 16 KB | ################################################################################## | 100%
Preparing transaction: done
Verifying transaction: done
Executing transaction: done
然后找到对应的安装路径
[training@localhost bin]$ sudo find / -name libhdfs3*
/home/training/anaconda2/lib/libhdfs3.so
/home/training/anaconda2/lib/libhdfs3.so.2.2.31
/home/training/anaconda2/lib/libhdfs3.so.1
/home/training/anaconda2/lib/pkgconfig/libhdfs3.pc
/home/training/anaconda2/pkgs/libhdfs3-2.3.0-hd191362_1
/home/training/anaconda2/pkgs/libhdfs3-2.3.0-hd191362_1/lib/libhdfs3.so
/home/training/anaconda2/pkgs/libhdfs3-2.3.0-hd191362_1/lib/libhdfs3.so.2.2.31
/home/training/anaconda2/pkgs/libhdfs3-2.3.0-hd191362_1/lib/libhdfs3.so.1
/home/training/anaconda2/pkgs/libhdfs3-2.3.0-hd191362_1/lib/pkgconfig/libhdfs3.pc
/home/training/anaconda2/pkgs/libhdfs3-2.3.0-hd191362_1.tar.bz2
/home/training/anaconda2/conda-meta/libhdfs3-2.3.0-hd191362_1.json
[training@localhost bin]$ sudo find / -name libhdfs*
/usr/share/doc/hadoop-2.6.0+cdh5.7.0+1280/hadoop-mapreduce1/libhdfs.pdf
/usr/share/doc/hadoop-2.6.0+cdh5.7.0+1280/hadoop-mapreduce1/libhdfs.html
/usr/lib/impala/lib/libhdfs.so
/usr/lib/impala/lib/libhdfs.so.0.0.0
/usr/lib/hadoop/lib/native/libhdfs.a
/usr/lib64/libhdfs.so
/usr/lib64/libhdfs.so.0.0.0
/home/training/anaconda2/lib/libhdfs3.so
/home/training/anaconda2/lib/libhdfs3.so.2.2.31
/home/training/anaconda2/lib/libhdfs3.so.1
/home/training/anaconda2/lib/pkgconfig/libhdfs3.pc
/home/training/anaconda2/pkgs/libhdfs3-2.3.0-hd191362_1
/home/training/anaconda2/pkgs/libhdfs3-2.3.0-hd191362_1/lib/libhdfs3.so
/home/training/anaconda2/pkgs/libhdfs3-2.3.0-hd191362_1/lib/libhdfs3.so.2.2.31
/home/training/anaconda2/pkgs/libhdfs3-2.3.0-hd191362_1/lib/libhdfs3.so.1
/home/training/anaconda2/pkgs/libhdfs3-2.3.0-hd191362_1/lib/pkgconfig/libhdfs3.pc
/home/training/anaconda2/pkgs/libhdfs3-2.3.0-hd191362_1.tar.bz2
/home/training/anaconda2/conda-meta/libhdfs3-2.3.0-hd191362_1.json
在我的python文件头前加入以下几句话,就可以解决这个问题
import sys
sys.path.append('/home/training/anaconda2/lib/')
sys.path.append('/usr/local/lib/python2.7/site-packages/')