開発環境の導入とカーネルビルド
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
]
開始行:
*セルフ開発環境の導入 [#jc647bbb]
-''インストール''~
#pre{{
bash-2.05b# yum install rpm-build gcc gcc-c++ make ncurse...
}}
ビルドディレクトリの修正。~
#pre{{
bash-2.05b# cd /usr/src
bash-2.05b# mv unknown redhat
}}
-''rpm式のビルド方法''~
--パッケージをそのままビルドする方法~
#pre{{
bash-2.05b# rpmbuild --rebuild package.src.rpm
}}
/usr/src/redhat/RPMS/sh4等の下にパッケージが生成される。~
~
--パッケージを修正、または変更してビルドする方法~
#pre{{
bash-2.05b# rpm -ivh package.&color(red){src};.rpm
}}
そうすると、/usr/src/redhat/SOURCEと、/usr/src/redhat/SPE...
該当ディレクトリのファイルを修正し、~
#pre{{
bash-2.05b# cd /usr/src/redhat/SPECS
bash-2.05b# rpmbuild -ba package.spec
}}
/usr/src/redhat/RPMS/sh4等の下にバイナリパッケージが生成...
/usr/src/redhat/SRPMSの下へ修正後のソースパッケージが生成...
~
*kernelのセルフビルド [#m7670939]
-''概略''~
kernel2.6では、ソースコード以外のディレクトリでビルドする...
ここでは、次のようなディレクトリ構成でカーネルをビルドす...
#pre{{
/home/landisk/kernel/linux-2.6.11/ …… カーネルソース
/home/landisk/kernel/build/ …… ビルドディレ...
}}
-''ソースコードの取得''~
次の場所等からソースコードを取得します。~
http://eggplant.ddo.jp/www/download/kernel26/~
~
-''展開''~
〜/kernel/linux-2.6.11/....というディレクトリに展開されま...
#pre{{
landisk:~/kernel$ tar vxfz linux-2.6.11-kogiidena-v0.1.sr...
}}
-''build ディレクトリの作成''~
buildディレクトリを作り、そこへ.configファイルを用意しま...
#pre{{
landisk:~/kernel$ mkdir build
landisk:~/kernel$ cp linux-2.6.11/arch/sh/configs/julian_...
}}
-''Makefileの修正''~
linux-2.6.11/Makefileの該当行を次のように修正します。
#pre{{
CROSS_COMPILE ?=
HOSTCC = gcc
HOSTCXX = g++
}}
-''make menuconfig''~
ビルドパラメータをお好みで応じて設定してください。~
(最初は触らないほうが無難ですが・・・)~
#pre{{
landisk:~/kernel$ cd linux-2.6.11
landisk:~/kernel/linux-2.6.11$ make O=~/kernel/build menu...
}}
-''make''~
先ほど作成したbuildディレクトリにcdしてmakeします。~
(kernel2.6からmake depは不必要になりました。)~
#pre{{
landisk:~/kernel$ cd ~/kernel/build
landisk:~/kernel/build$ make
}}
-''ビルド終了''~
zImageは、~/kernel/build/arch/sh/boot/zImage にできます。~
カーネルモジュールもこの段階でビルドされています。~
~
-''カーネルmoduleのインストール''~
#pre{{
landisk:~/kernel/build$ su # suでrootになって、
landisk:~/kernel/build$ make modules_install
}}
-''その他''~
makeの所で、"make rpm"とするとrpmパッケージ化されたカーネ...
~
~
#counter
終了行:
*セルフ開発環境の導入 [#jc647bbb]
-''インストール''~
#pre{{
bash-2.05b# yum install rpm-build gcc gcc-c++ make ncurse...
}}
ビルドディレクトリの修正。~
#pre{{
bash-2.05b# cd /usr/src
bash-2.05b# mv unknown redhat
}}
-''rpm式のビルド方法''~
--パッケージをそのままビルドする方法~
#pre{{
bash-2.05b# rpmbuild --rebuild package.src.rpm
}}
/usr/src/redhat/RPMS/sh4等の下にパッケージが生成される。~
~
--パッケージを修正、または変更してビルドする方法~
#pre{{
bash-2.05b# rpm -ivh package.&color(red){src};.rpm
}}
そうすると、/usr/src/redhat/SOURCEと、/usr/src/redhat/SPE...
該当ディレクトリのファイルを修正し、~
#pre{{
bash-2.05b# cd /usr/src/redhat/SPECS
bash-2.05b# rpmbuild -ba package.spec
}}
/usr/src/redhat/RPMS/sh4等の下にバイナリパッケージが生成...
/usr/src/redhat/SRPMSの下へ修正後のソースパッケージが生成...
~
*kernelのセルフビルド [#m7670939]
-''概略''~
kernel2.6では、ソースコード以外のディレクトリでビルドする...
ここでは、次のようなディレクトリ構成でカーネルをビルドす...
#pre{{
/home/landisk/kernel/linux-2.6.11/ …… カーネルソース
/home/landisk/kernel/build/ …… ビルドディレ...
}}
-''ソースコードの取得''~
次の場所等からソースコードを取得します。~
http://eggplant.ddo.jp/www/download/kernel26/~
~
-''展開''~
〜/kernel/linux-2.6.11/....というディレクトリに展開されま...
#pre{{
landisk:~/kernel$ tar vxfz linux-2.6.11-kogiidena-v0.1.sr...
}}
-''build ディレクトリの作成''~
buildディレクトリを作り、そこへ.configファイルを用意しま...
#pre{{
landisk:~/kernel$ mkdir build
landisk:~/kernel$ cp linux-2.6.11/arch/sh/configs/julian_...
}}
-''Makefileの修正''~
linux-2.6.11/Makefileの該当行を次のように修正します。
#pre{{
CROSS_COMPILE ?=
HOSTCC = gcc
HOSTCXX = g++
}}
-''make menuconfig''~
ビルドパラメータをお好みで応じて設定してください。~
(最初は触らないほうが無難ですが・・・)~
#pre{{
landisk:~/kernel$ cd linux-2.6.11
landisk:~/kernel/linux-2.6.11$ make O=~/kernel/build menu...
}}
-''make''~
先ほど作成したbuildディレクトリにcdしてmakeします。~
(kernel2.6からmake depは不必要になりました。)~
#pre{{
landisk:~/kernel$ cd ~/kernel/build
landisk:~/kernel/build$ make
}}
-''ビルド終了''~
zImageは、~/kernel/build/arch/sh/boot/zImage にできます。~
カーネルモジュールもこの段階でビルドされています。~
~
-''カーネルmoduleのインストール''~
#pre{{
landisk:~/kernel/build$ su # suでrootになって、
landisk:~/kernel/build$ make modules_install
}}
-''その他''~
makeの所で、"make rpm"とするとrpmパッケージ化されたカーネ...
~
~
#counter
ページ名: