debianを組み込みシステムにインストールすることになったのでメモ。
使ったディストリビューションは最新のlennyでターゲットはarm。
今回はターゲットで既に他のLinuxが動作していたので一気に出来ましたが、クロスでやる場合には2ステージにわけて、まずファイルのインストールを行い、実機で残りの設定などを行うという感じ。
- ファイルシステムを準備
パーティションを切り、ext2/ext3等で空のファイルシステムを用意する - ファイルシステムをマウント
mkdir /mnt/debinst
mount /dev/xxx /mnt/debinst
- debootstrapのインストール
ホストが同じdebianならいいのですが、別なLinuxならばdebootstrapをインストールすることが必要。
debootstrap自体は基本的なLinuxのツールが動けばほとんどのLinux上で動作可能。
システムにインストールしたくない場合にはdebootstrapをD.3に従ってarで展開し出てきたdata.tar.gzをさらに展開。sbinにパスを通し、shareの中身を/usr/shareにシンボリックリンクする。 - debootstrapの実行
debootstrap --arch ARCH lenny /mnt/debinst http://ftp.jp.debian.org/debian
クロスの場合には
debootstrap --foreign --arch ARCH lenny /mnt/debinst http://ftp.jp.debian.org/debian
- カーネルのインストール
専用カーネルの場合にはそれを展開。/devも作っておく - u-bootなどのブートプログラムの設定や準備
- 起動してみる
- クロスの場合には後半実行
/debootstrap/debootstrap --second-stage
- 適当にエラーをつぶす。
- tasksel install desktop
以上。覚え書き。
以前redhat7のmipsを作ったときにはSGIからパッケージを落として今は無きKondaraからパッケージをもらってきて、rpmベースでやったのですが、リコンパイルも含めてかなり時間を食いました。今回は調査開始からものの数時間で基本システムの起動まで出来た。素晴らしい。