読者です 読者をやめる 読者になる 読者になる

segmentation fault orz

日頃の技術的興味をつらつらと…

hadoopのビルド

hadoopというものがはやってきているらしく、ソースコードも読みだしたので
自分でビルドぐらいできるようにならねばと思い、こころみた。


環境概要
======================

Macbook Air 11インチ最小構成
java 1.7u51
git 1.7.12 (ソースコードのダウンロード)
maven-3.0.4 (手動インストール)
protocolbuffer-2.5.0 (configure -> make)
eclipse kepler
hadoop trunk

手順
======================

1.hadoopソースコードをclone

 $ git clone git://git.apache.org/hadoop-common.git

2.Oracle javaをインストール
(省略)

3.eclipseをインストール
(省略)

4.protocol bufferをインストール
一部はまったが、下記により解消。
http://d.hatena.ne.jp/torazuka/20111201/protobuf

5.ビルド
BULDING.txtにしたがい、ひとまず打ってみる。

 $ mvn package -DskipTests -Dtar

[ERROR] Failed to execute goal on project hadoop-annotations: Could not resolve dependencies for project org.apache.hadoop:hadoop-annotations:jar:3.0.0-SNAPSHOT: Could not find artifact jdk.tools:jdk.tools:jar:1.7 at specified path /usr/java/jre1.7.0_51/../lib/tools.jar -> [Help 1]

ぬう。。。

BUINDING.txtによると、Javaディレクトリの中身にシンボリックリンクを作るらしい。

 $ cd /usr/java/default
 $ sudo mkdir Classes
 $ cd Classes
 $ sudo ln -s ../lib/tools.jar classes.jar

続いてビルド

 $ cd /path/to/hadoop-src/
 $ mvn package -DskipTests -Dtar

[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------

めでたしめでたし。
targetもできたようなので、次はeclipseでpatchでも書いてみるか。
疲れたので今日はこれでおしまい。