Wiiリモコンで操作できるプレゼン・マシンの製作(1) ―― オリジナルのAndroidマシンを自作する

渡邊 賢二

●ボード構成設定ファイルを準備する

 Androidのビルド・システムは,ターゲットとなるボード(基板)に合わせてビルド構成が変更可能なように,ボードごとに構成ファイル(BoardConfig.mk)を持つことができます.通常このファイルは,vendorディレクトリ配下のボードごとのディレクトリにそれぞれ配置されます.BeagleBoard向けのボード構成設定ファイルは存在しないため,ここではデフォルトのボード構成ファイルを使用します.デフォルト構成ではALSAやBluetoothが無効となっているため,修正する必要があります.また,パッケージ構成を設定するファイル(<ボード名>.mk)も修正が必要ですが,同じようにデフォルトのファイル(generic.mk)を使用します.




 

 

●SDカードを有効化する

 Androidではボリューム・デーモン(vold)がSDカードのマウントを行います.デフォルトではエミュレータ用のvold設定ファイル(vold.conf)がインストールされますが,今回はこのファイルをBeagleBoard用の設定に修正します(これも本来はボードごとに用意するべきである).

 また,voldはマウント時にファイル・システムの検証コマンドとして"fsck_msdos"コマンドを実行しますが,本稿執筆時点でデフォルトではこのコマンドはビルドされません.そこで,すでにexternalにあるdosfstoolsのdosfsckコマンドをビルドし,これを"fsck_msdos"として配置することにします.dosfstoolsにはAndroid.mkが含まれていないため,Android.mkを新規に追加する必要があります.


 

●Androidのソース・コードをビルドする

 Androidのソース・コードをビルドしてUserlandを構築します(Androidのソースにはビルド済みのツール・チェーンも同梱されている).

$ make ※6

※6 "-j"オプションでn個のCPUを使用して並列ビルドが可能です.

 

●Userlandをコピーする

 ビルドが完了すると"~/mydroid/out/target/product/generic"配下に,Userlandを構成する個別のファイルとそれをNAND配置用にまとめたイメージ・ファイルが作成されます(SDカードによる起動のため,イメージ・ファイルは使用しない).Userlandを構成する個別ファイルをSDカードのパーティション1にコピーし,パーミッションとオーナを変更します.

$ cd ~/mydroid/out/target/product/generic
$ sudo cp -a root/* /media/LABEL2/
$ sudo cp -a system/* /media/LABEL2/system/
$ sudo cp -a data/* /media/LABEL2/data/ ※7
$ sudo chown -R root.root /media/LABEL2/
$ sudo chmod -R 777 /media/LABEL2/

※7 通常この手順はコピー元のdataが空なので不要ですが,削除可能なプリインストール・アプリケーションなどが"data/app/"に配置されるため,記載しています.

組み込みキャッチアップ

お知らせ 一覧を見る

電子書籍の最新刊! FPGAマガジン No.12『ARMコアFPGA×Linux初体験』好評発売中

FPGAマガジン No.11『性能UP! アルゴリズム×手仕上げHDL』好評発売中! PDF版もあります

PICK UP用語

EV(電気自動車)

関連記事

EnOcean

関連記事

Android

関連記事

ニュース 一覧を見る
Tech Villageブログ

渡辺のぼるのロボコン・プロモータ日記

2年ぶりのブログ更新w

2016年10月 9日

Hamana Project

Hamana-8最終打ち上げ報告(その2)

2012年6月26日