HTC Dream(aka T-Mobile G1, Android Dev Phone 1)用Android(cupcake)のビルドをしてみる
Debian上にAndroidのビルド環境を構築しようとしている。DebianじゃなくてUbuntuでも同じようなものだと思う。
ターゲットはHTC Dream(所謂Android Dev Phone 1)。
せっかくなのでcupcakeをビルドしてみる。ソフトキーボードを使ってみたいので。
ファームを上書きしてしまうと、もともと入っていた機器固有ライブラリ類が消えてしまうので、extract-files.shでファイルを吸い出しておくのを忘れないこと。
GitとGNU PGのインストール
$ sudo apt-get install git-core gnupg
JDKのインストール
$ sudo apt-get install sun-java6-jdk
ビルドに必要なツール
$ sudo apt-get install flex bison gperf libsdl-dev libesd0-dev libwxgtk2.6-dev build-essential zip curl libncurses5-dev zlib1g-dev
オプションツール
$ sudo apt-get install valgrind
Repoのインストール
$ mkdir ~/bin $ curl http://android.git.kernel.org/repo > ~/bin/repo $ chmod +x ~/bin/repo
add $HOME/bin into $PATH
リポジトリの準備
$ mkdir ~/mydroid $ cd ~/mydroid $ git config --global user.email "tetsuyasu@gmail.com" $ git config --global user.name "Tetsuyasu YAMADA" $ repo init -u git://android.git.kernel.org/platform/manifest.git -b cupcake
HTC Dream用追加ソースの設定
http://source.android.com/documentation/building-for-dreamからlocal_manifest.xmlをもらってくる。
$ cp local_manifest.xml ~/mydroid/.repo/
ソースの取得
$ cd ~/mydroid $ repo sync
機器固有ライブラリ類のバックアップ
sdkが必要
$ cd ~/mydroid/vendor/htc/dream $ ./extract-files.sh
ビルド
$ cp ~/mydroid/build/buildspec.mk.default ~/mydroid/buildspec.mk
edit buildspec.mk
56c56 < #TARGET_PRODUCT:=generic --- > TARGET_PRODUCT:=htc_dream
$ cd ~/mydroid $ make
~/mydroid/out/target/product/dreamにsystem.img, boot.imgが出来上がった。
書き込み (自己責任)
バックボタンを押しながら起動してfastbootモードにする。上記のimgをflashする。
ただし、これらのimgにはGmail, YouTube, Market, IMは含まれていないので要注意。
あなたのHTC Dreamがレンガになったりしても、私は何も補償できませんのであしからず。
$ cp ~/mydroid/out/host/linux-x86/bin/fastboot ~/bin $ cd ~/mydroid/out/target/product/dream $ fastboot flash system system.img $ fastboot flash boot boot.img $ fastboot reboot