(cupcake)システム3部鈴木です。今後ソースに変更があった場合に対応できるよう、Androidをソースからコンパイルする方法を説明します。このエントリーではAndroid1.5(cupcake)を対象にしています。開発環境の用意Armadilloで動作するバイナリをビルドするには、@テクノが提供しているATDEという開発環境を使用します。下記のサイトからダウンロードします。VMWareのイメージになっています。FXダウンロードただ、このVMイメージはメモリが256MB、HDDが8GBなので、ビルドに時間がかかりますし、ソースを色々とDLすると、ディスクが一杯になってしまいます。Builderというツールを使用して、メモリの割り当てを増やし、ディスクを追加しておくと良いかと思われます。Download追加したディスクはext3でフォーマットし、/etc/mtabに追記しておくとマウントの手間が省けます。ソフトウェアマニュアル」というPDFファイルを参照してください。ビルドに必要なパッケージ」という項も確認して、必要なパッケージを最新にしておいてください。製品同梱のCDに含まれるファイルは上記のサイトのものよりだいぶ古いので、マニュアル中で「CDに入っている」と記載のあるものは上記サイトからDLしたもので代用するのが良いでしょう。Androidユーザーランドをビルドしてみるまず、Androidをビルドするために必要なパッケージを用意します。「開発環境の用意」で用意したDebianの環境で、下記のパッケージをインストールします。zlib1g-dev次に、sun-java5-jdkをインストールするのですが、私の環境ではsoueces.listにnon-freeを追加してもsun-java6-jdkしか見つからなかったので、sunのサイトからダウンロードしました。sun-java6-jdkだとAndroidのソースのビルド中に警告が出て、続行できません。プラットフォームはLinuxで、rpm形式のバイナリをDLしてください。jdk-1_5_0_20-linux-i586-rpm.binをDLした事として、説明を続けます。DLしたファイルに下記の操作を行い、jdk-1_5_0_20-linux-i586.rpmファイルを取り出します。./jdk-1_5_0_20-linux-i586-rpm.binできればDebianのパッケージ管理ツールで管理できるようにしたいので、.deb形式に変換します。jdk_1.5.0_20-1_i386.debというファイルが出来上がります。jdk-1_5_0_20-linux-i586.rpmgdebiというツールでローカルのdebファイルをインストールできます。パッケージマネージャ」など、標準的なツールで行えます。jdk_1.5.0_20-1_i386.deb次はgit-coreです。以上になってくれません。リポジトリにbackportsを追加する必要があります。sources.listにリポジトリを追記して、インストールを行います。git-core次に、Androidのソースを取得し、ビルドします。atmarkユーザのホームディレクトリで作業するものとして説明を続けます。ソースを入手するために、repoというツールを~/binにインストールします。~/bin/repoソースをDLするディレクトリを用意します。名前は自由に付けてください。mydroidAndroid1.5(cupcake)のコードリストを取得します。Gmailアカウントを要求されます。実在するGmailアカウントを入力してください。cupcakeソースコードを取得します。2GB以上あり、時間がかかるので、気長に待ってください。syncmakeの前に、取得したソースに対して、バッテリーの残量を調べるモジュールを修正します。この作業を行わないと、Androidの起動直後にバッテリーの残量が無いと言われて、起動できません。Batteryパッチ」の項に従ってファイルの修正を行ってください。ブリリアントサービス修正が完了したらmakeします。makemakeが完了したら、Armadilloに転送するためのファイルを作成します。下記のディレクトリに移動して、中身を確認してください。lsrootというディレクトリがAndroidユーザーランドになります。ディレクトリをコピーします。./root/キーレイアウト、キーマップのファイルのアクセス権を変更します。これを行わないとボタンが効きません。全部backボタンのような動作をしてしまいます。./root/system/usr/keylayout/*起動スクリプト等を変更します。「Android1.5を動かしてみる」でDLしたAndroidユーザーランドのtarファイルを展開し、作成されたディレクトリ直下に、起動スクリプトファイルがあるので、root直下にコピーします。ここでは、展開後のディレクトリを~/androidとします。./rootrootディレクトリをアーカイブして完成です。(rootディレクトリを適当なところにコピーして、名前を変更したほうがいいかもしれません。./root後は「Android1.0を動かしてみる」を参考に、AndroidユーザーランドをArmadilloに展開してください。wgetではなく、FTPでArmadilloにファイルを転送・展開すると良いと思われます。カテゴリーに公開されました。フィードで購読することができます。コメントを残すか、ご自分のサイトからトラックバックすることができます。