目录

准备工作

jar包安装

源码编译


准备工作

  • CentOS可以联网,验证:ping www.baidu.com 是畅通的
  • jar 包准备(hadoop 源码、JDK8、maven、ant 、protobuf)
    (1)hadoop-2.7.2-src.tar.gz
    (2)jdk-8u144-linux-x64.tar.gz
    (3)apache-ant-1.9.9-bin.tar.gz(build 工具,打包用的)
    (4)apache-maven-3.0.5-bin.tar.gz
    (5)protobuf-2.5.0.tar.gz(序列化的框架)

注意:采用root 角色编译,减少文件夹权限出现问题,最好准备一台干净的机器

jar包安装

  • JDK解压,配置环境变量JAVA_HOME和PATH
  1. tar -zxf jdk-8u144-linux-x64.tar.gz -C /opt/module/
  2. vi /etc/profile
  3. #JAVA_HOME:
  4. export JAVA_HOME=/opt/module/jdk1.8.0_144
  5. export PATH=$JAVA_HOME/bin:$PATH
  6. source /etc/profile
  7. 验证:java -version
  • Maven 解压、配置MAVEN_HOME 和PATH

  1. tar -zxvf apache-maven-3.0.5-bin.tar.gz -C /opt/module/
  2. vi conf/settings.xml
  3. 在<mirrors></mirrors>添加镜像
  4. <mirror>
  5. <id>nexus-aliyun</id>
  6. <mirrorOf>central</mirrorOf>
  7. <name>Nexus aliyun</name>
  8. <url>http://maven.aliyun.com/nexus/content/groups/public</url>
  9. </mirror>
  10. vi /etc/profile
  11. # MAVEN_HOME
  12. export MAVEN_HOME=/opt/module/apache-maven-3.0.5
  13. export PATH=$MAVEN_HOME/bin:$PATH
  14. source /etc/profile
  15. 验证:mvn -version
  • ant 解压、配置ANT _HOME 和PATH
  1. tar -zxvf apache-ant-1.9.9-bin.tar.gz -C /opt/module/
  2. vi /etc/profile
  3. # ANT_HOME
  4. export ANT_HOME=/opt/module/apache-ant-1.9.9
  5. export PATH=$PATH:$ANT_HOME/bin
  6. source /etc/profile
  7. 验证:ant -version
  • 安装glibc-headers 和g++ 命令如下
  1. yum install glibc-headers
  2. yum install gcc-c++
  • 安装make 和cmake
  1. yum install make
  2. yum install cmake
  • 解压protobuf ,进入到解压后protobuf 主目录,/opt/module/protobuf-2.5.0,然后相继执行命令
  1. tar -zxvf protobuf-2.5.0.tar.gz -C /opt/module/
  2. cd /opt/module/protobuf-2.5.0/
  3. ./configure
  4. make
  5. make check
  6. make install
  7. ldconfig
  8. vi /etc/profile
  9. # LD_LIBRARY_PATH
  10. export LD_LIBRARY_PATH=/opt/module/protobuf-2.5.0
  11. export PATH=$PATH:$LD_LIBRARY_PATH
  12. source /etc/profile
  13. 验证:protoc --version
  • 安装openssl ,ncurses-devel 库
  1. yum install openssl-devel
  2. yum install ncurses-devel

到此编译工具安装基本完成

源码编译

  • 解压源码到/opt/目录
  1. tar -zxvf hadoop-2.7.2-src.tar.gz -C /opt/
  • 进入到hadoop 源码主目录
  1. cd /opt/hadoop-2.7.2-src
  • 通过maven 执行编译命令
  1. mvn package -Pdist,native -DskipTests -Dtar
  • 编译成功的64 位hadoop 包在/opt/hadoop-2.7.2-src/hadoop-dist/target 下

197706290

Hadoop2.7.2源码编译过程的更多相关文章

  1. hadoop-2.6.0源码编译问题汇总

    在上一篇文章中,介绍了hadoop-2.6.0源码编译的一般流程,因个人计算机环境的不同, 编译过程中难免会出现一些错误,下面是我编译过程中遇到的错误. 列举出来并附上我解决此错误的方法,希望对大家有 ...

  2. Ubuntu 14.04 LTS 下 android 2.3.5 源码编译过程

    Ubuntu 14.04 LTS 下 android 2.3.5 源码编译过程   在新的Ubuntu 64位系统下去编译早期的安卓源码是会出现很多问题的,因为64位系统在安装完成后,很多32位的兼容 ...

  3. 英蓓特Mars board的android4.0.3源码编译过程

    英蓓特Mars board的android4.0.3源码编译过程 作者:StephenZhu(大桥++) 2013年8月22日 若要转载,请注明出处 一.编译环境搭建及要点: 1. 虚拟机软件virt ...

  4. Hadoop源码编译过程

    一.           为什么要编译Hadoop源码 Hadoop是使用Java语言开发的,但是有一些需求和操作并不适合使用java,所以就引入了本地库(Native Libraries)的概念,通 ...

  5. 使用Maven将Hadoop2.2.0源码编译成Eclipse项目

    编译环境: OS:RHEL 6.3 x64 Maven:3.2.1 Eclipse:Juno SR2 Linux x64 libprotoc:2.5.0 JDK:1.7.0_51 x64 步骤: 1. ...

  6. nginx源码编译以及源码编译过程中遇到的问题

    本文主要讲nginx安装以及安装过程中遇到的问题. 谈到nginx 必须聊聊它的起源和发展. nginx是由俄罗斯工程师Igor Sysoev 用C语言开发的一个免费开源的Web服务器软件,于2004 ...

  7. android源码编译过程

    1.下载好android源码包. 2.装好vm,ubuntu(如果能在实体机装linux更好). 3.安装所需要的deb包 在终端执行如下命令: sudo apt-get install flex b ...

  8. spring5源码编译过程中必经的坑

    spring源码编译流程:Spring5 源码下载 第 一 步 : https://github.com/spring-projects/spring-framework/archive/v5.0.2 ...

  9. hadoop-2.6.0源码编译

    运行hadoop环境时,常常会出现这种提示 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your plat ...

随机推荐

  1. 桥接模式(Bridge模式)

    桥接模式的定义与特点 桥接(Bridge)模式的定义如下:将抽象与实现分离,使它们可以独立变化.它是用组合关系代替继承关系来实现,从而降低了抽象和实现这两个可变维度的耦合度.通过上面的讲解,我们能很好 ...

  2. TeXstudio在右边显示预览

    打开预览界面后: 点击查看(View) 选择最后一个:窗口/内嵌(Windowed/Embedded) 就可以了

  3. 集合框架-Map集合重点方法keySet演示

    1 package cn.itcast.p6.map.demo; 2 3 import java.util.HashMap; 4 import java.util.Iterator; 5 import ...

  4. 用 CSS 让你的文字更有文艺范

    透明文字,模糊文字,镂空文字,渐变文字,图片背景文字,用 CSS 让你的文字也有 freestyle- 前言 我们做页面涉及字体的时候,最多就是换个 color 换个 font-family,总是觉得 ...

  5. Kubernetes-Secret

    1. 简介 Secret 是一种包含少量敏感信息例如密码.令牌或密钥的对象. 这样的信息可能会被放在 Pod 规约中或者镜像中. 使用 Secret 意味着你不需要在应用程序代码中包含机密数据. 由于 ...

  6. docker内存限制

    默认docker容器可以使用宿主机所有的内存和CPU,我们可以通过 docker run 来限制内存和CPU的使用. 有的系统内核不支持 Linux capabilities. 可以通过 docker ...

  7. FreeSWITCH 1.10.7 编译(debian 11)

    1.安装预备库 apt install -y build-essential gdb gnupg2 wget autoconf lsb-release libtool libtool-bin libt ...

  8. 如何在Visual Studio中添加opencvsharp的可视化工具

    这个文件放到这个目录下,就可以看mat对象查看了

  9. 有手就行4——jenkins项目构建类型(自由风格,maven风格)

    有手就行4--构建Maven项目 Jenkins项目构建类型(1)-Jenkins构建的项目类型介绍 Jenkins项目构建类型(2)-自由风格项目构建 Jenkins项目构建类型(3)-Maven项 ...

  10. 实现基于MYSQL验证的vsftpd虚拟用户访问

    一.配置mysql服务器 1.1 安装mysql # yum -y install mariadb-server # systemctl enable --now mariadb.service &a ...