`

64位操作系统下 maven编译hadoop-2.2.0 源码

阅读更多
启动start-dfs.sh出现WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
出现原因:hadoop本地库只有32位 在64位机子上会出现上述问题

解决方法
官方提供的本地库只有32位的,所以需要我们在64位系统 重新编译源码从而得到64位的本地库
操作系统  Centos 6.5
编译 的时候需要 linux  需要联网  ,因为maven  需要下载 hadoop  依赖包
安装 jdk  1.6  以上 

安装  maven  3.0
设置  maven 环境变量  (验证   mvn -version)。
   执行 yum install gcc
   执行  yum  install gcc-c++
      执行 yum install make
解压  protobuf 2.5.0
cd 解压的目录下
执行  ./configure
  执行  make
  执行  make install
安装cmake
yum install cmake
yum install openssl-devel
yum install ncurses-devel
下载  hadoop 源码 hadoop-2.2.0-src.tar.gz 解压文件
修改hadoop/hadoop-common-project/hadoop-auth/pom.xml文件
<!--新增的内容开始 -->
<dependency>
       <groupId>org.mortbay.jetty</groupId>
     <artifactId>jetty-util</artifactId>
     <scope>test</scope>
   </dependency>
<!--新增的内容结束 -->
   <dependency>
    <groupId>org.mortbay.jetty</groupId>
       <artifactId>jetty</artifactId>
       <scope>test</scope>
     </dependency>
在hadoop  解压目录下执行
mvn package -Pdist,native -DskipTests -Dtar

开始编译 hadoop  源码
编译 后 的 源码 就在  target  目录中 的  hadoop-2.2.0  文件夹中 


  • 大小: 248.3 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics