【hadoop源码研究-编译】MacBook pro编译hadoop3.4.0版本的源码

配置

电脑配置

最近在研究hadoop,首先就应该编译捣鼓环境开始,我使用电脑配置是

Hardware:

    Hardware Overview:

      Model Name: MacBook Pro
      Model Identifier: MacBookPro18,3
      Model Number: FKGR3CH/A
      Chip: Apple M1 Pro
      Total Number of Cores: 8 (6 performance and 2 efficiency)
      Memory: 16 GB
      System Firmware Version: 10151.121.1
      OS Loader Version: 10151.121.1
      Serial Number (system): DQYNHCVQVY
      Hardware UUID: 7B95CA03-07CE-5BC5-A4CC-F0BE52AFE028
      Provisioning UDID: 00006000-001C214E0CE2801E
      Activation Lock Status: Enabled

maven、jdk、protobuf配置

~ % mvn -version
Apache Maven 3.9.1 (2e178502fcdbffc201671fb2537d0cb4b4cc58f8)
Maven home: ~/Documents/maven/apache-maven-3.9.1
Java version: 1.8.0_411, vendor: Oracle Corporation, runtime: /Library/Java/JavaVirtualMachines/jdk-1.8.jdk/Contents/Home/jre
Default locale: zh_CN, platform encoding: UTF-8
OS name: "mac os x", version: "14.5", arch: "aarch64", family: "mac"

~ % java -version
java version "1.8.0_411"
Java(TM) SE Runtime Environment (build 1.8.0_411-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.411-b09, mixed mode)

 ~ % protoc --version
libprotoc 27.3
安装protobuf

1、去githup下载对应系统的包,我下载的是编译好的arm版

2、unzip 命令解压

3、加入环境变量

#vi ~/.bash_profile 
export PROTOBUF=/Library/software/protobuf
export PATH=$PROTOBUF/bin:$PATH

别忘记,source ~/.bash_profile

4、查看版本

~ % protoc --version
libprotoc 27.3

CMake

  • CMake 是一个用于构建、测试和打包软件的跨平台自动化工具。
  • 在编译 Hadoop 时,CMake 被用于生成构建 Hadoop 所需的 Makefile 文件。
brew install cmake

openssl

  • OpenSSL 是一个开源的、标准的加密协议库。
  • Hadoop 需要使用 OpenSSL 库来提供加密和安全特性,如 SSL/TLS 支持。
brew install openssl

snappy

  • Snappy 是一个开源的压缩/解压缩库。
  • Hadoop 使用 Snappy 来压缩和解压缩数据,以提高数据传输和存储的效率。
brew install snappy

zlib

  • zlib 是一个通用的数据压缩库。
  • Hadoop 使用 zlib 来压缩和解压缩数据,提高存储效率。
brew install zlib

ant

ant 一个将软件编译、测试、部署等步骤联系在一起加以自动化的一个工具,大多用于Java环境中的软件开发。  apache-ant-1.9.9-bin.tar.bz2

brew install ant

执行编译命令

尽量使用下面命令执行,缺点是会执行部分测试代码比较慢,但是在打tar的时候可以不报错。

mvn package -Pdist  -Dmaven.test.skip=true -DskipTests -Dtar

该命令可以在编译时完全跳过测试部分,但是在执行打tar包时可能会报错(参考报错3),需要修改xml文件,去除包含的测试jar包

mvn clean package -Pdist  -Dmaven.test.skip=true -DskipTests -Dtar

mvn clean package -Pdist -Dmaven.test.skip=true -DskipTests -

  • 7
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值