MacBook ProにAndroidのソースを入れてビルドしたときの備忘録です(参考: http://source.android.com/download)。
ディスクイメージの準備
Mac OS X で動かすには、大文字/小文字を区別するファイルシステムが必要になります。デフォルトでは大文字/小文字を区別しないようになっています。したがって、新たにファイルシステムを作り直さなければなりません。でも大文字/小文字を区別すると、Adobe系のソフトが動かなくなるという話もあります(最近のはどうなのか未確認です)。これは困ります。
幸い、Mac OS X では簡単にディスクイメージを作ることができるので、これを使えば既存のパーティションを変更することなく、Androidの開発環境をインストールすることができます。
アプリケーション/ユーティリティにあるディスクユーティリティを使って「HFS+」のパーティションを作ります。
以下のように、サイズはカスタム8GB、フォーマットをMac OS 拡張(大文字/小文字を区別、ジャーナリング)にしておきます。ここでは名前をandroid.dmgにしておきました。
.bash_profileに以下を追加。
# command to mount the android file image function mountAndroid { hdiutil attach ~/android.dmg -mountpoint /Volumes/android; }
そして、
# mountAndroidすることで、ディスクイメージを /Volumes/android にマウントします。
以後、必要なときにこのコマンドでマウントすればいいです。
ツールの準備
必要なツールを port を使ってインストールします。
$ sudo port selfupdate $ sudo port install gmake $ sudo ln -s gmake /opt/local/bin/make $ sudo port install libsdl $ sudo port install git-core gnupg
.bash_profileに以下を追加します。
# set the number of open files to be 1024 ulimit -S -n 1024
設定を読み直しておきます。
$ . ~/.bash_profileRepoのインストール
repo の置き場をつくります。
$ cd ~ $ mkdir bin
.bash_profile の PATH に ~/bin を追加しておく必要があります。
repo をダウンロードしてきます。
$ curl http://android.git.kernel.org/repo >~/bin/repo $ chmod a+x ~/bin/repo
ソースの取得
これでツールの準備はできました。Androidのソースを取ってきます。
$ mkdir mydroid $ cd mydroid $ repo init -u git://android.git.kernel.org/platform/manifest.git $ repo sync
時間がかかるので気長に待ちましょう。
ビルド
いよいよビルドです。
$ cd ~mydroid $ make
これにはすごく時間がかかります。しばらく放置しておきましょう。
トラブルシューティング
repo sync してソースをアップデートすると、ビルドできなくなるときがありました。
$ make build/core/main.mk:178: implicitly installing apns-conf_sdk.xml build/core/base_rules.mk:117: *** recovery: MODULE.TARGET.EXECUTABLES.recovery already defined by bootable/recovery. 中止.
この場合には以下のようにすればいいようです。
$ rm -rf recovery $ make
これで、MacにAndroidソースのビルド環境ができました。



