现在的位置: 首页 > 综合 > 正文

C程序访问hadoop程序编译通过后在运行的时候出现:WARN util.NativeCodeLoader错误。

2018年11月08日 ⁄ 综合 ⁄ 共 1098字 ⁄ 字号 评论关闭

参考博文:

http://www.linuxidc.com/Linux/2012-04/59200.htm

http://www.cnblogs.com/gpcuster/archive/2011/02/17/1957042.html

WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable

貌似是hadoop java环境和系统环境不匹配导致的错误,之后我就参考博客:http://www.cnblogs.com/gpcuster/archive/2011/02/17/1957042.html

方法:

ant compile-native 

阻碍一:sudo apt-get install ant(没有ant)

阻碍二:Can't exec "libtoolize": 没有那个文件或目录
at /usr/bin/autoreconf line 196,则解决方法:apt-get install libtool

阻碍三:

 [exec] /usr/local/hadoop/src/native/src/org/apache/hadoop/io/compress/zlib/ZlibCompressor.c:71:41: error: expected expression before ',' token()
     [exec] make[1]: *** [ZlibCompressor.lo] 错误 1
     [exec] make: *** [all] 错误 2

BUILD FAILED
/usr/local/hadoop/build.xml:611: The following error occurred while executing this line:
/usr/local/hadoop/build.xml:686: exec returned: 2

我跳转到:/usr/local/hadoop/src/native/src/org/apache/hadoop/io/compress/zlib/ZlibCompressor.c

查看到是HADOOP_ZLIB_LIBRARY未定义错误,网上搜到HADOOP_ZLIB_LIBRARY是在config.h头文件定义的

可是到现在我都还没找到config.h头文件在哪里?如果有哪位大侠知道,还请赐教,在下感激不敬;

如果我找到了,我会及时更新blog的。

更新:其实这只是个WARN警告信息,多半是你的函数调用了比较旧的api,但是一般情况下不影响你正常的运行。

抱歉!评论已关闭.