在Windows下编译Hadoop源码的方法

栏目: 编程工具 · 发布时间: 6年前

环境准备

  • 准备一个Windows环境,比如Windows 10。

软件准备

  • 下载Hadoop的源码包 3.1.2
  • 将下载到的软件包,解压至一个较短的路径,比如 D:\HDP312 ,规避Windows环境对路径名长度的限制。否则在解压文件时,由于压缩包内的目录层次过深,导致解压操作失败。
  • 阅读 D:\HDP312\BUIlDING.txt 中关于Windows的章节,按照要求准备软件。相关软件均放置到 D:\HDP312\Tools\ 下。
    • 安装JDK,比如1.8的201版本。安装完毕后,将JDK的目录复制到 D:\HDP312\Tools 下,即 D:\HDP312\Tools\jdk1.8.0_201
    • 安装 Maven 工具,比如3.5.0版本。安装后路径为 D:\HDP312\Tools\apache-maven-3.5.0
    • 安装 Protocol Buffers ,从官网下载2.5.0版本,将压缩包解压后,将编译器复制到 D:\HDP312\Tools\PROTO\bin 下。
    • 安装 CMake 。从官网下载绿色压缩包版本,将压缩包中的文件放置到 D:\HDP312\Tools\CMAKE 下。
    • 安装Windows SDK 7.1,下载路径参考BUIlDING.txt中给出的URL。
    • 安装Microsoft Visual Studio 2015 Community版本, 下载链接
    • 安装zlib,可参考。
    • 安装Git工具, 下载

编译准备

  • 准备Maven的配置文件 settings.xml ,放置在 D:\HDP312\Tools 下。
  • 准备环境变量初始化脚本 setup_build_env.cmd ,内容如下:
@echo off
@REM 64位环境,使用如下变量
set Platform=x64
set VCVARSPLAT=amd64

@REM 32位环境,使用如下变量
set Platform=Win32
set VCVARSPLAT=x86

@REM 根路径
set BUILD_ROOT=D:\HDP312

@REM 相关 工具 的根路径
set TOOLS_ROOT=%BUILD_ROOT%\Tools
set PATH=%TOOLS_ROOT%\bin;%PATH%
set PATH=%TOOLS_ROOT%\lib;%PATH%

@REM Maven工具的安装路径
set M2_HOME=%TOOLS_ROOT%\apache-maven-3.5.0
set MAVEN_HOME=%M2_HOME%
set PATH=%MAVEN_HOME%\bin;%PATH%

@REM JDK的安装路径
set JAVA_HOME=%TOOLS_ROOT%\jdk1.8.0_201
set PATH=%JAVA_HOME%\bin;%PATH%

@REM ProtoBuffer工具的编译器的安装路径,ProtoBuffer只能使用2.5.0版本
set PROTOC_HOME=%TOOLS_ROOT%\PROTO
set PROTOC_BIN=%PROTOC_HOME%\bin\protoc
set HADOOP_PROTOC_PATH=%PROTOC_BIN%
set PATH=%PROTOC_HOME%\bin;%PATH%

@REM Git工具的安装路径
set GIT_HOME=D:\Program Files\Git
set PATH=%GIT_HOME%\bin;%PATH%

@REM CMake工具的安装路径
set CMAKE_HOME=%TOOLS_ROOT%\CMAKE
set CMAKE_ROOT=%CMAKE_HOME%
set PATH=%CMAKE_HOME%\bin;%PATH%

@REM zlib1.dll需要放置在%ZLIB_HOME%下
set ZLIB_HOME=%TOOLS_ROOT%\lib

@REM MSVS工具的安装路径
set MSVS=D:\Program Files (x86)\Microsoft Visual Studio 14.0
set PATH=%MSVS%\VC;%PATH%

@REM MSBUILD工具的安装路径
set MSBUILD_HOME=C:\Program Files (x86)\MSBuild\14.0
set PATH=%MSBUILD_HOME%\Bin;%PATH%

call "%MSVS%\VC\vcvarsall.bat" %VCVARSPLAT%
  • 打开命令行窗口,执行如下命令,开始编译
d:
cd %BUILD_ROOT%
call setup_build_env.cmd
REM 注意使用mvn命令时,不要增加选项`-Dmaven.test.skip=true`,否则会导致编译失败。
mvn package -gs %TOOLS_ROOT%\settings.xml -DskipTests -Dmaven.javadoc.skip=true -Pdist -Dtar
  • 编译成功后,发布包保存在路径 %BUILD_ROOT%\hadoop-dist\target 下,文件名为 hadoop-3.1.2.tar.gz

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Numerical Methods and Methods of Approximation in Science and En

Numerical Methods and Methods of Approximation in Science and En

Karan Surana / CRC Press / 2018-10-31

ABOUT THIS BOOK Numerical Methods and Methods of Approximation in Science and Engineering prepares students and other readers for advanced studies involving applied numerical and computational anal......一起来看看 《Numerical Methods and Methods of Approximation in Science and En》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换