1.uclibc開発環境の作成
1 uclibc開発環境作成用に下記のパッケージを導入したマシンを用意する
まずはuclibcの環境を構築することにします。今回、ベースシステムとして使用したディストリビューションはFedora Core 6です。
Fedora Core 6を導入したときの導入パッケージは次のものを選択して導入しました。
−Development
□ Development Library
□ Development Tools
・nasm
−Base System
□ Administrator Tools
□ Base
開発マシンは最近のスペックのマシンならどのマシンでもいいですが、今回用いたPCはちょっと古めのThinkPad X20です。これを利用した理由は、このあと紹介するターゲットシステムのストレージはコンパクト・フラッシュを扱うこともあり、X20はCFのインターフェースとPCMCIAのいんたーフェースを持っており、コンパクト・フラッシュへのシステム移行が簡単に行えるという理由からX20を使用しています。
もちろん、USB経由でCFをサポートするメモリー・リーダー/ライターがあればそれを使うのが一番ですが、このために用意するものもったいないのであるもので環境構築です。
2 環境構築の流れ
uclibcが使用される環境をまず構築しなければなりません。よって次の順番でコンパイル及び導入を行います。
1 uclibcを開発環境用にコンパイル/導入
2 uclibcをエンベデッド・システム用にコンパイル
3 uclibc版のbusyboxをコンパイル
4 エンベデッド・システム用のカーネルをコンパイル
5 2〜4をまとめてエンベデッド・システムへ導入
6 エンベデッド・システムをカスタマイズ
なお、エンベデッド・システム用のディレクトリは「/usr/local/embedded」で話を進めます。
3 エンベデッド・システムを決める
uclibcを使用したシステムを稼動させるマシンを用意しなければなりません。
今回、省電力でなるべく小さなマシンをいろいろ探してみました。すると、PC Engines社のホーム・ページにとても興味深いSBC(シングル・ボード・コンピュータ)を見つけました。WRAP(Wireless
Router Application Platform)というボードでSHOPページを見ると日本でも販売しているSHOPがあり、とりあえず取り寄せてみました。
WRAPのスペック(1E-2) ボードサイズ:15.24cm(6")X15.24cm(6")
CPU :266 MHz AMD Geode SC1100
メモリ :128 MB SDRAM
IDE :コンパクトフラッシュスロット x 1
LAN :National Semiconductor DP83816 x 3
その他 :miniPCI スロット x 1
:シリアルポート x 1
WRAP 1E-2とエンクロージャー(黒)(Mini-PCI:Wareless LAN)

CPUはINTEL互換のCPUなので、オリジナルのLinuxを作成するにもクロスコンパイル環境は必要ないのでさほど難しくはなさそうです。
実はこのボードを使って「日経Linux」で省電力や組み込みLinuxで記事を書きましたが、そのときはGNU Glibcを使ってシステムを構築する方法を紹介していて、ボードのリビジョンも「1D-2」でした。つまりこのボードは2枚目だったりします。
写真ではMini-PCIに無線LANのカードがつけてありますが、この備忘録ではuclibcをベースとしたシステムを構築し簡単なWebサーバを構築することを目的としたいと思います。
このボードを使って、我が家のルーターの入れ替えも検討中ですので、ルーター構築の備忘録もいずれ公開しようと思います。
それでは、開発環境を使って、次のページから環境を構築していくだワン!
|