Hadoop 2.7 重新编译 64 位本地库下载,解决 Unable to load native-hadoop library for your platform
如果你使用64位Centos,64位 hadoop 2.7 ,那么肯定遇到了这个警告信息:
1 | WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable |
那么如何解决呢,我亲自试了如下方法,成功解决了问题。
PS:如果你很懒,可以直接下载我编译好的native文件夹,hadoop2.7 版本的,不知道其他版本是否适用。下载:native.zip
如果你想亲自编译,参考”大鹏鸟”的原创PDF 文章: Hadoop2.4.0重编译64位本地库.pdf
另外有几点需要注意:
- PROTOBUF 一定要用 2.5.0 版本的,否则会编译失败,可以 点此下载
- 编译好之后替换native下的所有文件
- 添加Debug信息:
export HADOOP_ROOT_LOGGER=DEBUG,console</span>
- 修改 /etc/profile,增加以下内容:
1 | export HADOOP_COMMON_LIB_NATIVE_DIR=${HADOOP_PREFIX}/lib/native |
然后就可以愉快的和小象玩耍啦!