- 追加された行はこの色です。
- 削除された行はこの色です。
[[bc10]]
~
COLOR(red){(注)2010年11月以降 記載しているビルドシステム自体に大きな変更が加えられたためstable/2009ブランチでの}~
COLOR(red){ビルドが完了しなくなりました。またmasterブランチではビルドは完了しますが、記載時点のものとuserlandのディレクトリ位置や}~
COLOR(red){ 各ソフトウェアバージョンなどに差異がありますのでご注意ください。}~
詳細につきましては[[Building Angstrom>http://www.angstrom-distribution.org/building-angstrom]]をご覧ください。~
- 目次
#contents
*概要 [#ye00a6a1]
2010/09/22~
- bc10 向けに Angstrom Distribution をビルドする方法について、情報をまとめてあります。
- Angstrom Distribution は組み込み Linux 向けのビルドフレームワークである OpenEmbedded 上に構築されたディストリビューションです。
- beagleboard クローンである bc10 で動作するのは正確には Angstrom Distribution ですが、OpenEmbedded の知識を前提としていますので~
ここでは広義の OpenEmbedded Linux の一つと考え OpenEmbedded Linux と記述します。~
*bc10 用OpenEmbeddedビルド環境作成手順 [#tb418d21]
Ubuntu 10.04 を使って、the Angstrom Distribution の [[Building Angstrom:http://www.angstrom-distribution.org/building-angstrom]] の手順に従ってビルド環境用の設定をします。~
**Ubuntu 10.04 開発環境[#zc8f4d78]
- 設定およびパッケージの追加 ~
Ubuntu デフォルトの sh は dash なので以下のコマンドを実行し bash に変更します。
~
sh が dash になっていると bitbake 実行時 bash を指定しているものがあり、予期せぬところでエラーが発生するためです。~
$ sudo dpkg-reconfigure dash
「dash を /bin/sh インストールしますか?」と聞かれるので「No」を選択します。~
これで sh は bash に変更されます。~
[[OEandYourDistro:http://wiki.openembedded.org/index.php/OEandYourDistro]] の [[Debian の項:http://wiki.openembedded.org/index.php/OEandYourDistro#Debian]] の通りに build に必要な deb package をインストールします。~
$ sudo apt-get install ssh
$ sudo apt-get install sed wget cvs subversion git-core \
coreutils unzip texi2html texinfo libsdl1.2-dev docbook-utils \
gawk python-pysqlite2 diffstat help2man make gcc build-essential g++ \
desktop-file-utils chrpath
(一行にすると長いので\(円マークに見えますがバックスラッシュです)で改行しています。)
$ sudo apt-get install libxml2-utils xmlto python-psyco docbook
- gzip ~
また、Ubuntu 10.04 では bitbake base-image 実行時に expat-2.0.1.tar.gz で
[[DATA-CRC Errorが発生:http://groups.google.co.jp/group/beagleboard/browse_thread/thread/2cbddf944f98dfdc]]します。 ~
これは [[gzip 1.3.12 によって発生:http://groups.google.co.jp/group/beagleboard/browse_thread/thread/2cbddf944f98dfdc]]しています。
gzip を [[1.4に変更:http://maltanar.blogspot.com/2010/05/getting-working-gzip.html]]することで上記エラーが発生しなくなるので 1.4 に変更します。~
gzip のバージョン確認~
$ gzip --version
gzip 1.3.12
1.3.12 なので 1.4 に更新します。~
gnu.org からgzip 1.4 を取得しビルド、インストールをします。~
$ wget ftp://ftp.gnu.org/gnu/gzip/gzip-1.4.tar.gz
$ tar xvfz gzip-1.4.tar.gz
$ cd gzip-1.4
$ ./configure
$ make
$ sudo make install
インストール完了後 version が1.4 になっていることを確認します。~
$ gzip --version
gzip 1.4
** bitbake 環境構築 [#q3b79387]
bitbake は 組込向け Linux ディストリビューションとして必要な kernel、パッケージ~
を Recipe という形で管理、ビルドするために使用する make コマンドのようなツールです。~
Recipe は ソースコードの取得や そのソースコードにあてる patch config からビルドなどを メタデータの形で持っています。~
より詳細な資料は 『[[BitBake User Manual:http://docs.openembedded.org/bitbake/html/]]』をご覧ください。~
ここでは [[Building Angstrom:http://www.angstrom-distribution.org/building-angstrom]] に記載されている方法と bc10 用への変更を記載します。~
- angstrom-setup-scripts ~
angstrom-setup-script は Angstrom (OpenEmbedded Linux) をビルドするための~
設定スクリプトやスクリプト実行後のファイル保存、ビルドのために使用します。~
angstrom-setup-script を git で取得します。~
$ cd ~
$ git clone git://gitorious.org/angstrom/angstrom-setup-scripts.git
$ cd angstrom-setup-scripts
oebb.sh でセットアップ対象のマシン名を指定します。
ここでは beagleboard を指定します。~
$ ./oebb.sh config beagleboard
実行後以下のようなメッセージが出ます。~
There now is a sourceable script in ~/.oe/enviroment. You can do '.
~/.oe/environment' and run 'bitbake something' without using ./oebb.sh
as wrapper
Setup for beagleboard completed
oebb.sh update を実行し OE と bitbake のファイルをダウンロードします。~
$ ./oebb.sh update
ここで 実行最後に以下のようなエラーがでますが、ビルド自体には問題ありません。~
fatal: git checkout: branch org.openembedded.dev already exists
- stable/2009 ~
環境構築しやすくするために openembedded 内のブランチを org.openembedded.dev から stable/2009 に切り替えます。~
angstrom-setup-scripts/sources/openembedded/ で stable/2009 のブランチが存在することを確認します。~
COLOR(red){(注)stable/2009 branch は2010年11月以降 ビルドシステム自体に大きな変更が加えられたためstable/2009 ブランチでの}~
COLOR(red){ ビルドが完了しなくなりました。master ブランチではビルドは完了しますが、記載時点のものとuserlandのディレクトリ位置や}~
COLOR(red){ 各ソフトウェアバージョンなどに差異がありますのでご注意ください。}~
$ cd ~/angstrom-setup-scripts/sources/openembedded/
$ git branch -a
%%- stable/2009 %%~
%%環境構築しやすくするために openembedded 内のブランチを org.openembedded.dev から stable/2009 に切り替えます。%%~
%%angstrom-setup-scripts/sources/openembedded/ で stable/2009 のブランチが存在することを確認します。%%~
<略>
remotes/origin/shared/blackfin
remotes/origin/shared/xorg-7.4-update
remotes/origin/shr/import
remotes/origin/shr/merge
remotes/origin/shr/stable2009
remotes/origin/shr/testing2009
remotes/origin/shr/testing2010
remotes/origin/shr/unstable
<略>
%% $ cd ~/angstrom-setup-scripts/sources/openembedded/ %% ~
%% $ git branch -a %% ~
$ git checkout origin/stable/2009 -b stable/2009
$ git pull
git pull を実行するとアップデートの必要がないという以下のメッセージが表示されます。~
%% <略> %% ~
%% remotes/origin/shared/blackfin%% ~
%% remotes/origin/shared/xorg-7.4-update %% ~
%% remotes/origin/shr/import %% ~
%% remotes/origin/shr/merge %% ~
%% remotes/origin/shr/stable2009 %% ~
%% remotes/origin/shr/testing2009 %% ~
%% remotes/origin/shr/testing2010 %% ~
%% remotes/origin/shr/unstable %% ~
%% <略> %% %%~
Already up-to-date.
%% $ git checkout origin/stable/2009 -b stable/2009 %% ~
%% $ git pull %% ~
%%git pull を実行するとアップデートの必要がないという以下のメッセージが表示されます。%%~
%% Already up-to-date. %%~
- local.conf ~
local.conf に DISTROが angstrom-2008.1 MACHINE beagleboard と記載されていることを確認します。~
$ cd ~/angstrom-setup-scripts/build/conf
$ vi local.conf
BB_NUMBER_THREADS = "2"
DISTRO = "angstrom-2008.1"
MACHINE ?= "beagleboard"
# Set TMPDIR instead of defaulting it to /tmp
TMPDIR = "/home/beat/angstrom-setup-scripts/build/tmp-angstrom_2008_1"
# Don't generate the mirror tarball for SCM repos, the snaps
hot is enough
BB_GENERATE_MIRROR_TARBALLS = "0"
- bitbake 用環境変数設定~
環境設定用ファイル ~/.oe/enviroment を読み込み、beagleboard 用の各PATHが設定が完了します。
$ . ~/.oe/environment
- mmap_min_addr ~
Ubuntu 10.04 では bitbake 実行時 qemu-arm のビルドで vm/mmap_min_addr の値を0 にしないとビルドエラーを起こします。~
[[wiki:http://wiki.openembedded.org/index.php/OEandYourDistro#Using_OpenEmbedded_on_Linux_systems]] では 128 でも良いと書かれていますが、0 を設定しないと bitbake 実行時に以下のエラーメッセージが表示されます。~
$ MACHINE=beagleboard bitbake base-image
FATAL: Openembedded's config sanity checker detected a potential
misconfiguration.
Either fix the cause of this error or at your own risk disable the
checker (see sanity.conf).
Following is the list of potential problems / advisories:
/proc/sys/vm/mmap_min_addr is not 0. This will cause problems with qemu so please fix the value (as root).
To fix this in later reboots, set vm.mmap_min_addr = 0 in /etc/sysctl.conf.
[[Wiki:http://wiki.openembedded.org/index.php/OEandYourDistro#Using_OpenEmbedded_on_Linux_systems]]の[SOLVED - update 2010-05]の項目 に書かれている方法 a)またはb) にてmmap_min_addr の値を 0に設定します。~
(Wikiでは"128"と書いてありますが、0に設定しないとエラーメッセージが bitbake 実行時に出ます。)~
$ sudo -s
a)
# echo 0 > /proc/sys/vm/mmap_min_addr
# cat /proc/sys/vm/mmap_min_addr
0
b)
# sysctl -w vm.mmap_min_addr=0
* Angstrom イメージ作成 1 [#l7df46a6]
** bitbake 実行[#rf74f034]
- bitbake base-image ~
mmap_min_addr の設定完了後、bitbake base-image を実行します。~
$ MACHINE=beagleboard bitbake base-image
<中略>
NOTE: Running task 2909 of 2910 (ID: 18, /home/beat/angstrom-setup-scripts/sources/openembedded/recipes/images/base-image.bb, do_rm_work)
NOTE: package base-image-1.0-r0: task do_rm_work: Started
NOTE: package base-image-1.0-r0: task do_rm_work: Succeeded
NOTE: Running task 2910 of 2910 (ID: 0, /home/beat/angstrom-setup-scripts
/sources/openembedded/recipes/images/base-image.bb, do_rm_work_all)
NOTE: package base-image-1.0-r0: task do_rm_work_all: Started
NOTE: package base-image-1.0-r0: task do_rm_work_all: Succeeded
NOTE: Tasks Summary: Attempted 2910 tasks of which 2822 didn't need to be rerun and 0 failed.
上記のように表示されると bitbake base-image の完了です。
-- 注意 ~
bitbake 途中で以下のようなメッセージがでることがあります。
NOTE: Running task 2823 of 2910 (ID: 128, /home/beat/angstrom-setup-scripts
/sources/openembedded/recipes/mtd/mtd-utils-native_1.0.0+git.bb, do_setscene)
fatal: The remote end hung up unexpectedly
fatal: early EOF
fatal: index-pack failed
ERROR: TaskFailed event exception, aborting
ERROR: Build of /home/beat/angstrom-setup-scripts/sources/openembedded/recipes
/u-boot/u-boot_git.bb do_fetch failed
ERROR: Task 147 (/home/beat/angstrom-setup-scripts/sources/openembedded/recipes
/u-boot/u-boot_git.bb, do_fetch) failed with 256
NOTE: Task failed: Unknown fetch Error: [Errno 2] No such file or directory:
'/home/beat/angstrom-setup-scripts/sources/downloads/git_gitorious.org.u-
boot-omap3.mainline.git_d363f9cb0918a1b6b92e2e20d01543d0c4f53274.tar.gz'
NOTE: package u-boot2009.05+r30+gitrd363f9cb0918a1b6b92e2e20d01543d0c4f53274-r30:
task do_fetch: Failed
ERROR: TaskFailed event exception, aborting
NOTE: package mtd-utils-native-1.0.0+git-r8: task do_compile: Succeeded
ERROR: Build of /home/beat/angstrom-setup-scripts/sources/openembedded/recipes
/u-boot/u-boot_git.bb do_fetch failed
ERROR: Task 147 (/home/beat/angstrom-setup-scripts/sources/openembedded/recipes
/u-boot/u-boot_git.bb, do_fetch) failed with 256
bitbake 実行中にファイルの取得に失敗した場合このままエラーとして終了しますが、再度 bitbake base-image を実行すると~
ファイル取得から再開します。~
- bitbake console-image ~
bitbake base-image 実行完了後、bitbake console-image を実行します。~
$ MACHINE=beagleboard bitbake cosole-image
<中略>
NOTE: package console-image-1.0-r0: task do_rm_work: Started
NOTE: package console-image-1.0-r0: task do_rm_work: Succeeded
NOTE: Running task 2892 of 2892 (ID: 0, /home/beat/angstrom-setup-scripts
/sources/openembedded/recipes/images/console-image.bb, do_rm_work_all)
NOTE: package console-image-1.0-r0: task do_rm_work_all: Started
NOTE: package console-image-1.0-r0: task do_rm_work_all: Succeeded
NOTE: Tasks Summary: Attempted 2892 tasks of which 2854 didn't need to be rerun and 0 failed.
上記のように表示されると bitbake console-image の完了です。~
-- bitbake base-image、console-imageについて~
base-image :以前の nanoと同様のもの kernel、busybox、ipkg をインストールできるシステムです。 ~
cosole-image: 以前のtask-base にプラスされたもの、各ペリフェラルに対するパッケージと BT、WIFI が追加されたものになります。~
task-base内にtask-base-extendedという依存関係が存在します。~
- イメージファイル ~
作成されたイメージファイルは ~
angstrom-setup-scripts/build/tmp-angstrom_2008_1/deploy/glibc/images/beagleboard 以下に配置されています。~
beat@bc10-oedev:~/angstrom-setup-scripts/build/tmp-angstrom_2008_1/deploy/glibc
/images/beagleboard$ ls
Angstrom-base-image-glibc-ipk-2009.X-stable-beagleboard-testlab
Angstrom-base-image-glibc-ipk-2009.X-stable-beagleboard.rootfs.tar.bz2
Angstrom-console-image-glibc-ipk-2009.X-stable-beagleboard-testlab
Angstrom-console-image-glibc-ipk-2009.X-stable-beagleboard.rootfs.tar.bz2
base-image-beagleboard.tar.bz2
base-image-beagleboard.ubi
console-image-beagleboard.tar.bz2
console-image-beagleboard.ubi
modules-2.6.29-r46-beagleboard.tgz
u-boot-beagleboard-2009.05+r30+gitrd363f9cb0918a1b6b92e2e20d01543d0c4f53274-r30.bin
u-boot-beagleboard.bin
uImage-2.6.29-r46-beagleboard.bin
uImage-beagleboard.bin
ubinize.cfg
** 環境変数設定 [#a3511da8]
bitbake で使用した toolchain で bc10 用の x-loader、u-boot、bc10-rowboat-kernel をビルドします。~
angstrom stable/2009 のビルドで使った toolchain は以下の場所に配置されています。~
beat@bc10-oedev:~/angstrom-setup-scripts/build/tmp-angstrom_2008_1/cross/armv7a/bin$ ls
arm-angstrom-linux-gnueabi-addr2line arm-angstrom-linux-gnueabi-gccbug arm-angstrom-linux-gnueabi-modprobe
arm-angstrom-linux-gnueabi-ar arm-angstrom-linux-gnueabi-gcov arm-angstrom-linux-gnueabi-nm
arm-angstrom-linux-gnueabi-as arm-angstrom-linux-gnueabi-generate-modprobe.conf arm-angstrom-linux-gnueabi-objcopy
arm-angstrom-linux-gnueabi-c++ arm-angstrom-linux-gnueabi-gfortran arm-angstrom-linux-gnueabi-objdump
arm-angstrom-linux-gnueabi-c++filt arm-angstrom-linux-gnueabi-gprof arm-angstrom-linux-gnueabi-ranlib
arm-angstrom-linux-gnueabi-cpp arm-angstrom-linux-gnueabi-insmod arm-angstrom-linux-gnueabi-readelf
arm-angstrom-linux-gnueabi-depmod-2.6 arm-angstrom-linux-gnueabi-insmod.static arm-angstrom-linux-gnueabi-rmmod
arm-angstrom-linux-gnueabi-g++ arm-angstrom-linux-gnueabi-ld arm-angstrom-linux-gnueabi-size
arm-angstrom-linux-gnueabi-gcc arm-angstrom-linux-gnueabi-lsmod arm-angstrom-linux-gnueabi-strings
arm-angstrom-linux-gnueabi-gcc-4.3.1 arm-angstrom-linux-gnueabi-modinfo arm-angstrom-linux-gnueabi-strip
以下のように環境変数を設定します。~
$ export PATH=${HOME}/angstrom-setup-scripts/build/tmp-angstrom_2008_1/cross/armv7a/bin:${PATH}
$ export ARCH=arm
$ export CROSS_COMPILE=arm-angstrom-linux-gnueabi-
** x-loader ビルド [#xe2b6aaf]
bc10用 x-loader を取得し ビルドを実行します。~
$ cd ~/
$ git clone git://gitorious.org/~bc-dev/x-load-omap3/x-load-bc10.git x-load-bc10
$ cd x-load-bc10
$ git checkout -t -b bc10 origin/bc10
$ make omap3530bc10_config
$ make
ビルド完了後に x-load.bin が生成されます。
- バイナリイメージの調整 ~
x-load.binはOMAP BootROM の仕様とフォーマットが合っていないので、このままNAND FlashやSDカードに書きこんでもブートローダとして動作させる~
ことができません。この問題を解決するために、signGP というツールでx-load.binを加工する必要があります。~
signGP の実行ファイルは[[ここ:http://beagleboard.googlecode.com/files/signGP]]からダウンロードすることができます。~
signGP は以下のように使用します。~
$ ./signGP x-load.bin
完了後 x-load.bin.ift が生成されます。~
BootROM の仕様により、x-load.bin.ift をSDカードにコピーするときは、~
SDカードのルートディレクトリにMLOという名前で保存する必要があります。~
* SDカードへの配置 1 [#qb46c30b]
この時点で一度 bc10 の boot のために必要なファイル類を SD カードに
コピーします。~
(注意:bc10は、設計上マイクロSDからブートは出来ません)~
[[bc10/booting SDカード作成>http://labs.beatcraft.com/ja/index.php?bc10%2Fbooting#q0449272]]を参照し SD カードに FAT32パーティションと
Linux パーティションをそれぞれ作成します。~
(以下 FAT32パーティションはLABEL1 Linuxパーティションは LABEL2 とします)~
U-Bootから起動するOSとしてLinuxを使用することを前提として、最終的にはSDカード内の構成を以下のようにします。
- FAT32パーティション
-- X- Loader
-- U-Boot
-- Linux kernel
-- boot.scr
- Linuxパーティション
-- Linuxルートファイルシステム
** FAT32 パーティション [#nd5f07ea]
- X- Loader~
1段目のブートローダであるX-Loaderは、SDカード上の配置方法に制限があります。必ず以下のように配置してください。
+ FAT32パーティションのフォーマット後、最初に配置するようにします。
+ パーティション内のトップディレクトリに配置します。
+ ファイル名を「MLO」とします。
$ cd ~/bc10/x-load-bc10
$ cp x-load.bin.ift /media/LABEL1/MLO
bc10 用の X- Loder ですので以降は更新しません。~
- u-boot.bin ~
angstrom-setup-scripts/build/tmp-angstrom_2008_1/deploy/glibc/images/beagleboard
以下に~
作成されている u-boot-beagleboard.bin を u-boot.bin という名前でコピーします。~
$ cd ~/angstrom-setup-scripts/build/tmp-angstrom_2008_1/deploy/glibc/images/beagleboard
$ cp u-boot-beagleboard.bin /media/LABEL1/u-boot.bin
- Linux Kernel ~
u-bootと同じangstrom-setup-scripts/build/tmp-angstrom_2008_1/deploy/glibc/images/beagleboard以下に作成されている~
uImage-beagleboard.bin を uImage という名前でコピーします。~
$ cp uImage-beagleboard.bin /media/LABEL1/uImage
- boot.scr ~
[[bc10/rowboat-eclair-dsp:http://labs.beatcraft.com/ja/index.php?bc10%2Frowboat-eclair-dsp-4#g62046dc]] と同様に boot.scr を作成します。~
このファイルはシリアルコンソールで u-boot のコマンドプロンプトから setenv で設定するのと同じ内容を作成し、~
起動時に毎回手動で設定する手間を省略するためのものです。
また、メモリマッピングを変えないよう設定します。~
まず以下の内容の boot.script を作成します。
$ cd ~
$ vi boot.script
if fatload mmc 0 84000000 uImage
then
echo ***** Kernel: /dev/mmcblk0p1/uImage.bin *****
fi
echo ***** RootFS: /dev/mmcblk0p2 *****
setenv bootargs 'mem=88M@0x80000000 mem=128M@0x88000000 androidboot.console=ttyS2 console=tty0 console=ttyS2,115200n8 root=/dev/mmcblk0p2 init=/init rootwait omapfb.video_mode=680x480MR-24@60'
bootm 84000000
このファイルを引数に指定して、以下のように mkimage を実行します。
$ mkimage -A arm -O linux -T script -C none -a 0 -e 0 -n ./boot.script -d ./boot.script ./boot.scr &> /dev/null
生成された boot.scr をSDカードのFATパーティションにコピーします。
$ sudo cp boot.scr /media/LABEL1/
** Linux パーティション [#bdaaa95a]
以下の3つのファイルを Linux パーティションにコピーします。~
- Angstrom-base-image-glibc-ipk-2009.X-stable-beagleboard.rootfs.tar.bz2
- Angstrom-console-image-glibc-ipk-2009.X-stable-beagleboard.rootfs.tar.bz2
- modules-2.6.29-r46-beagleboard.tgz
$ cd ~/angstrom-setup-scripts/build/tmp-angstrom_2008_1/deploy/glibc/images/beagleboard
$ sudo tar xvfj Angstrom-base-image-glibc-ipk-2009.X-stable-beagleboard.rootfs.tar.bz2 -C /media/LABEL2/
$ sudo tar xvfj Angstrom-console-image-glibc-ipk-2009.X-stable-beagleboard.rootfs.tar.bz2 -C /media/LABEL2/
$ sudo tar xvfz modules-2.6.29-r46-beagleboard.tgz -C /media/LABEL2/
Linux の userland の配置が終わりです。~
以上で1度目のSDカードイメージの作成は完了です。~
これをbc10 に投入し電源ON後 boot され Angstrom が起動することを確かめます。~
- boot log ~
#ref(oe1stboot.txt);
* Angstrom イメージ作成 2 [#r54c351b]
上記が確認できれば、bc10 用にカスタマイズしている u-boot と bc10-rowboat-kernelをビルドします。~
kernel を入れ替えるときは u-boot も合わせて入れ替えます。~
** u-boot ビルド [#x95c68bf]
bc10用 u-boot を取得しビルドします。~
$ cd ~/
$ git clone git://gitorious.org/bc10/u-boot-bc10.git u-boot-bc10
$ cd u-boot-bc10
$ git checkout -t -b build origin/build
$ make mrproper
$ make omap3_bc10_config
$ make
ビルド完了後 u-boot.bin が生成されます。~
** bc10-rowboat-kernel ビルド [#w5d34207]
$ git clone git://gitorious.org/~bc-dev/rowboat/bc10-rowboat-kernel.git bc10-rowboat-kernel
$ cd bc10-rowboat-kernel
$ git checkout -t -b bc10-2.6.32-build origin/bc10-2.6.32-build
$ make omap3_bc10_defconfig
$ make uImage
$ make modules
ビルド完了後以下のディレクトリにuImage が作成されます。
$ ls ~/bc10-rowboat-kernel/arch/arm/boot/
Image Makefile bootp compressed install.sh uImage zImage
*** modules ビルド [#j3fb3adc]
$ cd ~/bc10-rowboat-kernel/
$ mkdir mod_work
$ make ARCH=arm DEPMOD=echo INSTALL_MOD_PATH=mod_work modules_install
実行最後に DEPMOD (*注)が表示されます。~
DEPMOD 2.6.32-bc10-gdfb6acc (*注)
$ arm-angstrom-linux-gnueabi-depmod-2.6 -A -b /home/beat/bc10-rowboat-kernel/mod_work -F ./System.map 2.6.32-bc10-gdfb6acc
$ tar cvfz modules-2.6.32-bc10-gdb6acc.gz -C mod_work lib
$ ln -s modules-2.6.32-bc10-gdb6acc.gz modules-2.6.32-bc10-gdb6acc.tgz
(*注):kernel config で 「Automatically append version informaiton to the version string」を enable に~
していますので 2.6.32-bc10-gXXXXXX の末尾 XXXXXXの値は変更されることがあります。~
$ git rev-parse --verify HEAD
dfb6acc(略).........
またバージョンの値は以下のコマンドで確認できます。~
$ make kernelrelease
2.6.32-bc10-gdfb6acc
* SDカードへの配置 2 [#ad855000]
SDカードを再度ビルドマシンにマウントします。~
(マウント位置はSDカードへの配置1 と同じとします)~
** FAT32 パーティション [#m6d7990b]
- u-boot.bin ~
以前の u-boot.bin を削除し、u-boot-bc10 の u-boot.binを配置します。~
$ rm /media/LABEL1/u-boot.bin
$ cd ~/u-boot-bc10/
$ cp u-boot.bin /media/LABEL1/u-boot.bin
- Linux Kernel ~
同じく以前の Linux Kernel を削除し bc10-rowboat-kernel の uImage を配置します。~
$ rm /media/LABEL1/uImage
$ cd ~/bc10-rowboat-kernel/arch/arm/boot/
$ cp uImage /media/LABEL1/uImage
** Linux パーティション [#v9bb7729]
moduleを新たにコピーします。~
$ cd ~/bc10-rowboat-kernel/
$ sudo tar xvfz modules-2.6.32-bc10-gdb6acc.tgz -C /media/LABEL2/
以上で、完了です。~
- boot log ~
#ref(oe4thboot.txt);
* 参考 [#n36ce7b4]
-Ubuntu 10.04 開発環境
-- http://wiki.openembedded.org/index.php/OEandYourDistro#Debian
-- http://groups.google.co.jp/group/beagleboard/browse_thread/thread/2cbddf944f98dfdc
-- https://bugzilla.redhat.com/show_bug.cgi?id=588644
-- http://maltanar.blogspot.com/2010/05/getting-working-gzip.html
- bitbake 環境構築
-- http://docs.openembedded.org/bitbake/html/
-- http://www.angstrom-distribution.org/building-angstrom
-- http://wiki.openembedded.org/index.php/OEandYourDistro#Using_OpenEmbedded_on_Linux_systems
- x-loder ビルド
-- http://beagleboard.googlecode.com/files/signGP
* 更新記録 [#cc323c0b]
2010/05/07 初稿記載。主にOpenEmbedded 構築用の設定までの説明。~
2010/09/22 OpenEmbedded 設定方法の詳細、Angstromのインストール方法を追記。X-Loader、U-Bootについても記載。~
2010/10/08 bc10-rowboat-kernel moduleのビルド時に付与されるサフィックスについて記載。 ~