Atmark Distの中でビルドされていたLinuxカーネルを新しいバージョンの物に置き換える方法について説明します。
このHowtoの例では、以下の環境を想定しています。ご利用の環境に合わせて適宜読みかえてください。
- 対象製品:Armadillo-9
- Linuxカーネル:2.6.12.3-a9-10から-2.6.12.3-a9-11にバージョンアップ
- Atmark Distの状態:ビルド済み
1. Atmark Distの初期化
まず、makeコマンドにdistclean
ターゲットを指定して、Atmark Distを初期化します。カーネル設定とユーザランド設定も初期化されます。ユーザランド設定は以下のように保存できますが、カーネル設定はカーネルソースを新しい物に置き換えてから再設定するようにお願いします。
[PC ~/atmark-dist]$ make menuconfig
Kernel/Library/Defaults Selection --->
[*] Customize Vendor/User Settings
# < Exit > を2回選択後に、< Yes >を選択してください。
< Exit > --> < Exit > --> < Yes >
Save Configuration to an Alternate File
my.userland.config
< Ok > --> < Exit > --> < Yes >
[PC ~/atmark-dist]$ make distclean
[...]
rm -rf romfs config.in config.arch config.tk images
rm -f modules/config.tk
rm -rf .config .config.old .oldconfig autoconf.h
make ARCH=arm CROSS_COMPILE=arm-linux- -C linux-2.6.x distclean
make[1]: ディレクトリ `/home/atmark/temp/howtos/linux-2.6.12.3-a9-10' に入ります
make[1]: ディレクトリ `/home/atmark/temp/howtos/linux-2.6.12.3-a9-10' から出ます
[PC ~/atmark-dist]$
2. 新しいカーネルソースの準備
新しいバージョンのカーネルソースを取得して、Atmark Distの上のディレクトリに展開します。
[PC ~/atmark-dist]$ cd ..
[PC ~]$ tar zxf linux-2.6.12.3-a9-11.tar.gz
[PC ~]$ cd atmark-dist
[PC ~/atmark-dist]$
3. カーネルソースの置き換え
今まで利用していたカーネルソースへのシンボリックリンクを削除して、新しいバージョンのソースを削除します。
[PC ~/atmark-dist]$ rm -v linux-2.6.x
[PC ~/atmark-dist]$ ln -sv ../linux-2.6.12.3-a9-11 linux-2.6.x
create symbolic link `linux-2.6.x' to `../linux-2.6.12.3-a9-11'
これで新しいカーネルのソースを利用できます。makeコマンドにconfig
ターゲットを指定して、Atmark Distを新しくセットアップしてください。
[PC ~/atmark-dist]$ make config
ユーザランド設定を保存した場合、make config
を実行後、以下のようにロードできます。
[PC ~/atmark-dist]$ make menuconfig
Kernel/Library/Defaults Selection --->
[*] Customize Vendor/User Settings
# < Exit > を2回選択後に、< Yes >を選択してください。
< Exit > --> < Exit > --> < Yes >
Load an Alternate Configuration File
my.userland.config
< Ok > --> < Exit > --> < Yes >