1. 下载相关软件

apache-maven-3.3.1-bin.tar.gz

protobuf-2.5.0.tar.gz

hadoop-2.6.4-src.tar.gz

2.配置好jdk8环境(请看相关文章)

3. 在centos7安装相关的依赖包

yum install -y autoconf automake libtool cmake
yum install -y ncurses-devel openssl-devel

4.安装maven

tar xvf apache-maven-3.3.-bin.tar.gz
mv apache-maven-3.3. /opt/apache/

配置maven

vi /etc/profile.d/maven.sh

输入以下内容

export MAVEN_HOME=/opt/apache/apache-maven-3.3.
export MVN_HOME=$MAVEN_HOME
export PATH=$PATH:$MVN_HOME/bin

使配置立即生效

source /etc/profile

检查安装是否成功

mvn -version
Apache Maven 3.3. (cab6659f9874fa96462afef40fcf6bc033d58c1c; --14T04::+:)
Maven home: /opt/apache/apache-maven-3.3.
Java version: 1.8.0_65, vendor: Oracle Corporation
Java home: /usr/java/jdk1..0_65/jre
Default locale: en_US, platform encoding: UTF-
OS name: "linux", version: "3.10.0-327.10.1.el7.x86_64", arch: "amd64", family: "unix"

4.安装protobuf-2.5.0

tar xvf protobuf-2.5..tar.gz
cd protobuf-2.5.
./configure
make && make install

编译完成后检查是否安装成功

# protoc --version
libprotoc 2.5.

5. 编译hadoop-2.6.4

# tar xvf hadoop-2.6.-src.tar.gz
# cd hadoop-2.6.-src/
# mvn clean package -Pdist,native -DskipTests -Dtar -Dmaven.javadoc.skip=true

接下来就是漫长的等待, maven要下载各类编译依赖包,最后出现大概如下信息:

...
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: : min
[INFO] Finished at: --30T12::+:
[INFO] Final Memory: 158M/440M
[INFO] ------------------------------------------------------------------------

验证一下编译是否已经成功:

# cd hadoop-dist/target/hadoop-2.6./lib/native/
# file *
libhadoop.a: current ar archive
libhadooppipes.a: current ar archive
libhadoop.so: symbolic link to `libhadoop.so.1.0.'
libhadoop.so.1.0.: ELF -bit LSB shared object, x86-, version (SYSV), dynamically linked, BuildID[sha1]=29998b707256fa2a1f967e1f8f2e8486ca0fec15, not stripped
libhadooputils.a: current ar archive
libhdfs.a: current ar archive
libhdfs.so: symbolic link to `libhdfs.so.0.0.'
libhdfs.so.0.0.: ELF -bit LSB shared object, x86-, version (SYSV), dynamically linked, BuildID[sha1]=1c78b3f3f542cc9c586a0ad6cec05c1ef1d908df, not stripped

说明已经编译成功!

CentOS7+JDK8编译Hadoop2.6.4的更多相关文章

  1. CentOS7.3编译hadoop2.7.3源码

    在使用hive或者是kylin时,可以选择文件的压缩格式,但是这个需要有hadoop native库的支持,默认情况下,hadoop官方发布的二进制包中是不包含native库的,所以无法使用一些压缩相 ...

  2. centOS7上编译hadoop-2.7.7

    一.阅读编译文档 在hadoop源码包根目录下有个一个BUINDING.txt的文件,文件说明了编译hadoop所需要的一些编译hadoop所需要的一些编译环境相关的东西.不同hadoop版本的要求都 ...

  3. CentOS7下用jdk1.7编译hadoop-2.7.1全过程详解

    说实话,本人编译hadoop的过程比较曲折,但收获也很多,下面系统介绍一下CentOS7下编译hadoop-2.7.1的全过程吧. 先说明,32位Linux操作系统可以直接下载编译好的hadoop使用 ...

  4. CentOS7-64bit 编译 Hadoop-2.5.0,并分布式安装

    摘要 CentOS7-64bit 编译 Hadoop-2.5.0,并分布式安装 目录[-] 1.系统环境说明 2.安装前的准备工作 2.1 关闭防火墙 2.2 检查ssh安装情况,如果没有则安装ssh ...

  5. Centos7 下编译 Openjdk8

    本文主要介绍如何在 Centos7 下编译 Openjdk8 源码,<深入理解java虚拟机>第二版网上好多 openjdk7 的帖子,编译 jdk8 和 7 还是有些差别的,比如大家经常 ...

  6. 制作JavaCV应用依赖的基础Docker镜像(CentOS7+JDK8+OpenCV4)

    欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...

  7. 编译hadoop2.6.0

    具体情况比较曲折:hadoop2.6.0编译不过 错误如下: 这个kms模块始终编译不过,最后得出结论国内的aliyun maven仓库有问题, 在编译hadoop2.2.0 可以通过,因为这个版本的 ...

  8. Ubuntu12.04-x64编译Hadoop2.2.0和安装Hadoop2.2.0集群

      本文Blog地址:http://www.cnblogs.com/fesh/p/3766656.html   本文对Hadoop-2.2.0源码进行重新编译(64位操作系统下不重新编译会有版本问题) ...

  9. 从零教你在Linux环境下(ubuntu)如何编译hadoop2.4

    问题导读: 1.如果获取hadoop src  maven包?2.编译hadoop需要装哪些软件?3.如何编译hadoop2.4?扩展:编译hadoop为何安装这些软件? 本文链接 http://ww ...

随机推荐

  1. Duilib创建窗口双击标题栏禁止窗口最大化

    使用Duilib创建窗口并禁止窗口最大化 第一步: XXXFrame.Create(NULL, _T("XXXFrame"), UI_WNDSTYLE_EX_FRAME, WS_E ...

  2. word2007

      word2007   word2007图标   word2007边框和底纹   word2007扫描图片   word2007剪贴画   word2007图片   word2007页面视图   w ...

  3. SqlSever基础 datepart函数 返回现在多少秒

    镇场诗:---大梦谁觉,水月中建博客.百千磨难,才知世事无常.---今持佛语,技术无量愿学.愿尽所学,铸一良心博客.------------------------------------------ ...

  4. jQuery对html进行Encode和Decode

    最近需要在前台对编辑器生成的html代码做处理,需要进行编码,考虑到js没有直接对html编码的支持,看了下jQuery的实现,发现真是超级简单呀,顺便记录一下,需要的时候可以参考一下. functi ...

  5. C#中获取程序集版本号的方法

    我的方法: string version = Assembly.GetExecutingAssembly().GetName().Version.ToString();   方法一: public v ...

  6. FreeSWITCH第三方库(其他)的简单介绍(三)

    FreeSWITCH使用了大量的第三方库,本文档主要介绍关联相关库的信息: 音频相关库的信息介绍参考:http://www.cnblogs.com/yoyotl/p/5486753.html 视频相关 ...

  7. [转]SIP穿越NAT&FireWall解决方案

    原文链接(也是转载)http://blog.csdn.net/yetyongjin/article/details/6881491.我修改了部分错字.   SIP从私网到公网会遇到什么样的问题呢? 1 ...

  8. Linux链接库四(多个库文件链接顺序问题)

    最近在Linux下编程发现一个诡异的现象,就是在链接一个静态库的时候总是报错,类似下面这样的错误: (.text+0x13): undefined reference to `func' 关于unde ...

  9. iOS添加广告的主要方法

    //用户取消正在执行的广告时 调用 - (void)cancelBannerViewAction { NSLog(@"Banner was cancelled!"); self.a ...

  10. 《Linux内核设计的艺术》学习笔记(七)INT 0x15中断

    参考资料: 1. <IBM-PC汇编语言程序设计> 2. http://blog.sina.com.cn/s/blog_5028978101008wk2.html 3. http://ww ...