クロスコンパイル用ツールの準備
sbuild の作業環境へクロスコンパイルのツール(Cross-Toolchains)をインストールしました。なおツールは、ターゲット・プロセッサによって変化しますので、恒久的にインストールするのではなく、環境が新しくなるとリセットされる通常のインストールで行いました。CrossToolchains
https://wiki.debian.org/CrossToolchains
まずは sbuild の作業環境へログインします。以下は、全て sbuild の作業環境の中での作業となります。
$ schroot -c jessie-i386-sbuild
(jessie-i386-sbuild)user@kurobuilder:~$
クロスコンパイル環境を提供してくれる emdebian.org の鍵を取得します。
$ sudo wget http://emdebian.org/tools/debian/emdebian-toolchain-archive.key | sudo apt-key add -
クロスコンパイルのツールのインストールをします。大量のソフトウェアがインストールされます。途中 /etc 内の設定値を変更するか?と問い合わせがありますが、すべてデフォルトの "N" で処理しました。
$ sudo dpkg --add-architecture powerpc
$ sudo apt-get update
$ sudo apt-get install cross-gcc-dev
$ sudo apt-get install crossbuild-essential-powerpc
さらに追加のインストールを行います。玄箱用カーネルの再構築中に必要とされたソフトウェアです。
$ sudo apt-get install bc
$ sudo apt-get install u-boot-tools
$ sudo apt-get install libncurses5-dev
玄箱用カーネルの構築(ビルド)
sbuild の作業環境から、ユーザ・ディレクトリ内でカーネルの構築を行います。$ cd ~/
$ mkdir kuro-box
$ cd kuro-box
カーネル・ソース(3.19.6)をダウンロード
$ wget https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.19.6.tar.gz
カーネル・ソース(3.19.6)を解凍
$ tar zxvf linux-3.19.6.tar.gz
玄箱用にカーネル・オプションの初期設定
$ cd linux-3.19.6/
$ ARCH=powerpc make linkstation_defconfig
カーネル・オプションの設定
カーネル・オプションを流用して見直しをする場合$ ARCH=powerpc make menuconfig
$ cp kurobox-config-3.19.6.txt .config
$ ARCH=powerpc make menuconfig
カーネルと各種モジュールのビルド(クロスコンパイル)
$ ARCH=powerpc CROSS_COMPILE=powerpc-linux-gnu- make uImage modules
カーネルとモジュールの一時保存場所の作成
$ mkdir -p ../ppc/boot
モジュールの一時保存
$ ARCH=powerpc CROSS_COMPILE=powerpc-linux-gnu- INSTALL_MOD_PATH=../ppc make modules_install
カーネル用 DTC ファイルの一時保存
$ scripts/dtc/dtc -f -I dts -O dtb -o ../ppc/boot/kuroboxHD.dtb -V 16 arch/powerpc/boot/dts/kuroboxHD.dts
カーネルの一時保存
$ cp -p arch/powerpc/boot/uImage ../ppc/boot/vmlinux.UBoot
$ cp -p System.map ../ppc/boot/
一時保存されたカーネルとモジュールを圧縮
$ pushd ../ppc/
ppc/$ tar zcvf kuro-kern.tgz boot
ppc/$ tar zcvf kuro-lib.tgz lib
ppc/$ popd
完成したカーネル(kuro-kern.tgz)とモジュール(kuro-lib.tgz)の圧縮ファイルを玄箱へ転送してインストールを行います。
玄人志向 玄箱(Debian Jessie)のカーネルの再インストール
http://near-unix.blogspot.jp/2015/12/debian-jessie_7.html
カーネルの動作確認までが終わったところで sbuild の作業環境からログアウトして、作業を終了します。
(jessie-i386-sbuild)user@kurobuilder:~$ exit
参考ウェブサイト
Debian Squeeze化した玄箱に最新の2.6系カーネルを入れる
http://blog.usoinfo.info/article/389750420.html
0 件のコメント:
コメントを投稿
注: コメントを投稿できるのは、このブログのメンバーだけです。