张春 发表于 2024-8-31 18:01:07

【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 -

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: 【hadoop源码研究-编译】MacBook pro编译hadoop3.4.0版本的源码