[HADOOP] 2017 년 OS X에서 소스에서 Apache Hadoop 빌드
HADOOP2017 년 OS X에서 소스에서 Apache Hadoop 빌드
지금까지 저는 Git repo를 포크했습니다.
https://github.com/apache/hadoop
소스에서 빌드하는 방법에 대한 정보를 찾고 있었는데 다음 명령을 시도했습니다.
mvn package -Pdist -Dtar -DskipTests
그 결과 다음과 같은 오류가 발생했습니다.
이것에 대한 좋은 문서가없는 것 같아요, 누가 올바른 절차를 알고 있습니까?
최신 정보:
또한이 방법으로 시도 :
이 파일에 따르면 패키지를 빌드 할 때 protoc을 작동시켜야합니다.
brew link --force --overwrite protobuf250
macOS 종속성은 다음과 같습니다.
$ brew install cmake
$ brew install zlib
$ brew install protobuf
$ brew install snappy
하지만 아무 소용이 :
그런데 공식 문서는 전혀 도움이되지 않습니다. 본질적으로 "Docker 컨테이너 사용"
해결법
-
==============================
1.OSX에서 Homebrew 사용하기 :
OSX에서 Homebrew 사용하기 :
필요한 종속성을 설치하십시오.
brew install protobuf@2.5 gcc autoconf automake libtool cmake snappy gzip bzip2 zlib openssl
Symlink 프로토콜 :
ln -s /usr/local/Cellar/protobuf@2.5/2.5.0/bin/protoc /usr/local/bin/protoc
버전 확인 (libprotoc 2.5.0) :
protoc --version
빌드 플래그 내보내기 :
export OPENSSL_ROOT_DIR="/usr/local/opt/openssl" export LDFLAGS="-L${OPENSSL_ROOT_DIR}/lib" export CPPFLAGS="-I${OPENSSL_ROOT_DIR}/include" export PKG_CONFIG_PATH="${OPENSSL_ROOT_DIR}/lib/pkgconfig" export OPENSSL_INCLUDE_DIR="${OPENSSL_ROOT_DIR}/include"
Hadoop 버전 확인 :
hadoop version
위에 반환 된 버전에 대한 Hadoop 소스를 가져 와서 빌드하십시오.
wget https://archive.apache.org/dist/hadoop/core/hadoop-3.1.0/hadoop-3.1.0-src.tar.gz tar zxvf hadoop-3.1.0-src.tar.gz cd hadoop-3.1.0-src mvn package -Dmaven.javadoc.skip=true -Pdist,native -DskipTests -Dtar
Homebrew 설치에 기본 lib를 복사하십시오.
cp -R hadoop-dist/target/hadoop-3.1.0/lib/ /usr/local/Cellar/hadoop/3.1.0/lib/
hadoop-env.sh 업데이트 :
vi /usr/local/Cellar/hadoop/3.1.0/libexec/etc/hadoop/hadoop-env.sh
HADOOP_OPTS 수정 (주석 처리 가능) :
export HADOOP_OPTS="-Djava.net.preferIPv4Stack=true -Djava.library.path=/usr/local/Cellar/hadoop/3.1.0/lib/native"
Hadoop을 다시 시작하고 다음을 실행하여 확인하십시오.
hadoop checknative -a
https://medium.com/@faizanahemad/hadoop-native-libraries-installation-on-mac-osx-d8338a6923db의 지침에 따라
-
==============================
2.최근에 나는이 문제에도 반대했다. 인터넷 검색 후,이 문제는 제 3 자 TLS 라이브러리 (openssl)와 macOS의 기본 라이브러리 사이에 까다로운 문제가 있음을 발견했습니다. 나는 정확히 여기서 무슨 일이 일어나는지 알지 못했지만.
최근에 나는이 문제에도 반대했다. 인터넷 검색 후,이 문제는 제 3 자 TLS 라이브러리 (openssl)와 macOS의 기본 라이브러리 사이에 까다로운 문제가 있음을 발견했습니다. 나는 정확히 여기서 무슨 일이 일어나는지 알지 못했지만.
내 솔루션 :
homebrew를 통해 openssl을 이미 설치했다고 가정합니다. 명령 줄이나 ~ / .bash_profile에 설정하고 (다시 소스로).
export OPENSSL_ROOT_DIR="/usr/local/opt/openssl" export LDFLAGS="-L${OPENSSL_ROOT_DIR}/lib" export CPPFLAGS="-I${OPENSSL_ROOT_DIR}/include" export PKG_CONFIG_PATH="${OPENSSL_ROOT_DIR}/lib/pkgconfig" export OPENSSL_INCLUDE_DIR="${OPENSSL_ROOT_DIR}/include"
maven 명령을 다시 실행하면 좋을 것입니다.
-
==============================
3.이전의 양조 버전은 protobuf 2.5.0에서 더 이상 존재하지 않습니다. 나는 이것을 다운로드하여 작동한다는 것을 알았다.
이전의 양조 버전은 protobuf 2.5.0에서 더 이상 존재하지 않습니다. 나는 이것을 다운로드하여 작동한다는 것을 알았다.
https://github.com/google/protobuf/releases/download/v2.5.0/protobuf-2.5.0.tar.bz2
다음 파일을 확장 한 후 일반 설치를 실행하십시오.
cd protobuf-2.5.0 ./configure make make check sudo make install
-
==============================
4.
mvn clean install -DskipTests
mvn package -Pdist -Pnative -Dtar -DskipTests
from https://stackoverflow.com/questions/45921078/build-apache-hadoop-from-source-on-os-x-in-2017 by cc-by-sa and MIT license
'HADOOP' 카테고리의 다른 글
[HADOOP] 매개 변수로 하이브에 뷰 만들기 (0) | 2019.06.19 |
---|---|
[HADOOP] Hadoop 2.6.0 : 설치 후 기본 오류 "MRAppMaster 시작" (0) | 2019.06.19 |
[HADOOP] Hadoop 에코 시스템 용 호스트 파일을 구성하는 방법 (0) | 2019.06.19 |
[HADOOP] Hive에서 'InputFormat, OutputFormat'및 'Stored as'의 차이점은 무엇입니까? (0) | 2019.06.19 |
[HADOOP] ArrayWritable을 사용한 직렬화가 재미있는 방식으로 작동하는 것 같습니다. (0) | 2019.06.19 |