在 ARM 上编译 Hadoop 2.7.1 (Raspbian)

Compiling Hadoop 2.7.1 on ARM (Raspbian)

我目前正在尝试在 Raspberry Pi 运行 Raspbian 7(喘不过气来)上编译 Hadoop 2.7.1 以使本机库运行。我让大部分依赖项正常工作,但我从 Maven 收到以下错误:

[INFO]
[INFO] --- maven-antrun-plugin:1.7:run (make) @ hadoop-common ---
[INFO] Executing tasks

main:
 [exec] -- The C compiler identification is GNU 4.6.3
 [exec] -- The CXX compiler identification is GNU 4.6.3
 [exec] -- Check for working C compiler: /usr/bin/gcc
 [exec] -- Check for working C compiler: /usr/bin/gcc -- works
 [exec] -- Detecting C compiler ABI info
 [exec] -- Detecting C compiler ABI info - done
 [exec] -- Check for working CXX compiler: /usr/bin/c++
 [exec] -- Check for working CXX compiler: /usr/bin/c++ -- works
 [exec] -- Detecting CXX compiler ABI info
 [exec] -- Detecting CXX compiler ABI info - done
 [exec] Soft-float JVM detected
 [exec] -- Looking for exit
 [exec] CMake Error at JNIFlags.cmake:59 (message):
 [exec]   Soft-float dev libraries required (e.g.  'apt-get install libc6-dev-armel'
 [exec]   on Debian/Ubuntu)
 [exec] Call Stack (most recent call first):
 [exec]   CMakeLists.txt:24 (include)
 [exec]
 [exec]
 [exec] -- Looking for exit - not found.
 [exec] -- Configuring incomplete, errors occurred!

显然,这并不像建议的 apt-get install libc6-dev-armel 那样简单。此包不可用。但是我不确定如何进行。有人有什么建议吗?

我通过集成在他们的 Jira 中找到的补丁来实现这一目标。

cd hadoop-common-project/hadoop-common/src
wget https://issues.apache.org/jira/secure/attachment/12570212/HADOOP-9320.patch
patch < HADOOP-9320.patch

您可以在他们的问题跟踪器上找到 the relevant page

我确认PATCH 9320 有帮助。但是您可能会遇到许多其他问题。我们花了几天时间来编译它。如果需要,您可以在此处下载我们编译的 hadoop 原生 ARMv7L 库:http://www.minibig.io/miniblog/2015/10/12/hadoop-271-native-libs-compiled-for-arm