2012/12/31

CyanogenMod10をビルドしてみた

Build for anzu - CyanogenMod
Guide on how I build my own CM10 test builts - xda-developers
nekomimip@nicの雑記帳: cyanogenmodのビルド(CM10)

年末で少し時間ができたので試してみた
本当は色々カスタマイズしたかったんだけど
時間切れなのでとりあえずはビルドまで
(公式のWikiに修正が入ったので直しました 2013/01/04)

gitが必要なのでインストール
USEのperlとpythonは不要だった
# emerge -v git

python2系でないとrepoが動かないのでとりあえず~/binにリンクを張る
(結構ハマった、これ他にいい回避方法ないのかな)
$ ln -s /usr/bin/python2 ~/bin/python

repoコマンドを取得
$ curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > ~/bin/repo
$ chmod +x ~/bin/repo

ダミーのユーザ名を設定
$ git config --global user.name android
$ git config --global user.email android

リポジトリを初期化&チェックアウト
(接続できない的なエラーが出てもしつこくリトライする)
$ mkdir $BUILDROOT (適当なディレクトリを作成)
$ cd $BUILDROOT
$ repo init -u git://github.com/CyanogenMod/android.git -b jellybean
$ repo sync (-j10とかをつけると並列で取得してくれる)

ネットからプロプラのファイルを取得するんだけど404で失敗するのでスクリプトを修正する
get-prebuiltsのURLを以下に書き換えて実行 (jackpal/Android-Terminal-Emulator · GitHub)
http://jackpal.github.com/Android-Terminal-Emulator/downloads/Term.apk
(直ってた 2013/01/04)
$ cd $BUILDROOT/vendor/cm
$ ./get-prebuilts

Xperia arc用にプロジェクトの準備をする
一覧が表示されるのでcm_anzu-userdebugの番号を入力する
$ cd $BUILDROOT
$ . ./build/envsetup.sh
$ lunch

プロプラのファイルを実機からコピーするのでADBで接続できる状態にしておく
$ cd $BUILDROOT/device/semc/anzu
$ ./extract-files.sh

一応最新チェック
$ cd $BUILDROOT
$ repo sync

schedtoolが必要なのでインストール
# emerge -v schedtool

pngcrush、optipngまたはpngoutが必要
Gentooにはpngcrushとoptipngがあったのでpngcrushをインストール
# emerge -v pngcrush

ビルド
$ cd $BUILDROOT
$ croot
$ brunch anzu

成功するとこんな感じのメッセージがでます
あとは普通に焼くだけ
Package complete: /home/alice/work/cyanogenmod/anzu/out/target/product/anzu/cm-10-20121231-UNOFFICIAL-anzu.zip
d9ae4549603083002b4e98be4ecea8e3  cm-10-20121231-UNOFFICIAL-anzu.zip

0 件のコメント:

コメントを投稿