[[bc10/Software]]
- Contents
#contents

* Summary [#p1c3acca]
>
The whole section is revised for explaining the installation process of Open Embedded Linux on bc10, including~
X-Loader and U-Boot. The previous version was discussed only the configuration of OpenEmbedded, a Linux~
framework for embedded systems. However, in new version, the installation process of the Angstrom Distribution~
is described. (The Angstrom Distribution is treated as one of Linux distributions for embedded system since it~
requires sufficient amount of knowledges of OpenEmbedded as well as embedded Linux and call it “OpenEmbedded Linux.")~
~
COLOR(red){(Caution)From November 2010, the built system, which is argued here, has been greatly modified. On stable/2009 branch,}~
COLOR(red){the build process is unlikely completed. On Master branch, the build process can be finished, the directories of userland}~
COLOR(red){and version of software can be different from the ones described here}~
~
For the details, please visit [[Building Angstrom>http://www.angstrom-distribution.org/building-angstrom]].

* How to create the Build Environment of OpenEmbedded for bc10 [#eded136e]
>
To follow the explanation listed at '''[[Building Angstrom:http://www.angstrom-distribution.org/building-angstrom]]''' on the Angstrom Distribution, configure the build environment~
in Ubuntu 10.04.~

** Ubuntu 10.04 development environment [#xaf656a7]
>
- Configuration  and addition of packages~

>
As the default, '''dash''' is the shell script for Ubuntu. However, this causes unexpected errors when BitBake is executed since~
'''bash''' is used  in some parts of BitBake. 
To use the command shown below, change the shell script of Ubuntu form '''dash''' to '''bash'''.
 $ sudo dpkg-reconfigure dash
As execute the command, it will ask whether dash is installed into '''/bin/sh''' or not. and, select ''No'' as the answer. Then, '''bash'''~
is chosen for shell script.~

>
To follow the direction published at the [[Debian section:http://wiki.openembedded.org/index.php/OEandYourDistro#Debian]] of [[OEandYourDistro:http://wiki.openembedded.org/index.php/OEandYourDistro]], install '''deb packages'''. The packages are mandatory~
and necessary for build.~
 $ 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~

>
As BitBake base-image is executed in Ubuntu 10.04, [[DATA-CAC Error:http://groups.google.co.jp/group/beagleboard/browse_thread/thread/2cbddf944f98dfdc]] occurs at '''expat-2.0.1.tar.gz'''. This error is due to~
'''[[gzip 1.3.12:http://groups.google.co.jp/group/beagleboard/browse_thread/thread/2cbddf944f98dfdc]]'''. This '''gzip 1.3.12''' is obsolete and needed to be updated. '''gzip 1.3.12 ''' is [[replaced with '''gzip1.4''':http://maltanar.blogspot.com/2010/05/getting-working-gzip.html]].~

>
Check up the version of gzip~
 $ gzip --version
 gzip 1.3.12 
As it is shown above, the version of gzip is 1.3.12, so it is going to be updated to 1.4. Obtain '''gzip1.4''' from '''gnu.org''',~
and build and install it.~
 $ 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
After complete the installation, re-examine the version of gzip.~
 $ gzip --version
 gzip 1.4

** Build BitBake environment  [#x0a6ecd8]
>
This explains how to set up the BitBake environment. This mostly follows the instructions published at Building Angstrom,~
yet the instructions are slightly altered for bc10.~
-What is '''BitBake'''

>
BitBake acts like '''make''' command as a tool, and it specifically manages kernel and packages for embedded Linux distributions.~
Its package management system is called '''recipe'''. A '''recipe''' informs BitBake all steps of the installation of packages, and  a '''recipe'''~
maintains a meta data for the information, which is needed to install the packages. For the details, please look at "[[BitBake User Manual:http://docs.openembedded.org/bitbake/html/]]".~
-angstrom-setup-scripts~

>
For building Angstrom (OpenEmbedded Linux), angstrom-setup -script is used for saving configuration scripts and the files,~
which are created after executing scripts, and building.~

>
Obtain angstrom-setup-script by git.~
 $ cd ~
 $ git clone git://gitorious.org/angstrom/angstrom-setup-scripts.git
 $ cd angstrom-setup-scripts
To run '''oebb.sh''' enter the name of the targeted machine. It will beagleboard to be exact.~
 $ ./oebb.sh config beagleboard
After executing, receive the message shown below.~
 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
Execute '''oebb.sh update''', and download OE and BitBake files.~
 $ ./oebb.sh update
At the end of the execution, the error massage appears, but this is ''not'' affect the update process and build process.~
 fatal: git checkout: branch org.openembedded.dev already exists

>
COLOR(red){(Caution) The build system of "stable/2009 branch" is greatly changed since November 2009, the build process is not likely completed on}~
COLOR(red){stable/2009 branch. As applying Master branch, the build process is finished, but the directories of userland and version of software}~
COLOR(red){are different from ones that originally argued here.}~

>
%%-stable/2009%%

>
%%To build the environment easily , the brach of OpenEmbedded is shifted from '''org.openembedded.dev''' to '''stable/2009'''%%.~
%%Make sure that '''stable/2009''' exists in '''angstrom-setup-scripts-/sources/openembedded/'''.%%~

>>
%% $ cd ~/angstrom-setup-scripts/sources/openembedded/ %%~
%% $ git branch -a %%~

>>
%% --%%~
%%  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%%~
%% --%%~

>>
%% $ git checkout origin/stable/2009 -b stable/2009%%~
%% $ git pull%%~

>
%%Execute '''git pull''', and receive a message, which informs that update is not necessary.%%~

>>
%% Already up-to-date.%%~

>
- local.conf

>
In '''local.conf''', '''angstrom-2008.1''' and '''beagleboard''' are listed at the sections of DISTRO and MACHINE, respectively.
 $ 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"

>
-Setup the environment variable for BitBake~

>
Read the file for the environment variable, '''~/.oe/environment/''', and complete the configuration of every PATH for~
beagleboard.~
 $ .  ~/.oe/environment

>
-mmap_min_addr

>
While BitBake is executed, a build error occurs at build of '''qemu-arm'''. Preventing this error, the value of '''vm/mmap_min_addr'''~
is set to 0. Although [[wiki:http://wiki.openembedded.org/index.php/OEandYourDistro#Using_OpenEmbedded_on_Linux_systems]] notes that value of 128 is acceptable, the error will be persist, and the error message shown below~
appears as BitBake is executed.~
 $  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.
There are two ways to configure the value of '''mmap_min_addr''' is equal to 0. [SOLVED - update 2010] of [[wiki:http://wiki.openembedded.org/index.php/OEandYourDistro#Using_OpenEmbedded_on_Linux_systems]] shows two different~
methods ( '''a)''', '''b)''' ) to change the value of '''mmap_min_addr''' to 0. (In wiki, the value is set to be 128, but the error message will~
appear as BitBake is executed.)~
 $ 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 

* Create Angstrom image (1) [#af12a9a9]
** Execute BitBake [#eaf7dfc2]
>
- about bitbake base-image and bitbake console-image

>
base-image handles the same tasks as its predecessor, '''nano''',  and it installs kernel, busybox, and ipkg. Console-image is add~
extra features to its previous version, '''task-base'''. The newly added features are packages for several peripherals, Bluetooth,~
and WiFi.
- bitbake base-image~

>
The configuration of '''mmap_min_addr''' is completed, execute 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.
As messages displayed above appear, bitbake base-image is completed.~

>
-- Caution: In the middle of executing BitBake, the message described below occasionally shows up.
 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 fails to obtain files as during the creating process. The failure is treated as an error, and the process is ended.~
To execute bitbake base-image again, it will start from obtaining the files.~

>
-bitbake console-image~

>
After the build of bitbake base-image is completed, run 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.
As these outputs, shown above appear, the build process of bitbake console-image is completed.

>
-Image Files~

>
Created image files are stared under the directory, '''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


** Configure environment variable [#nfffc264]

>
The toolchain, which has been employed creating BitBake, is used for building X-Loader, U-Boot, and bc10-rowboat-kernel.~
The toolchain which has been used for building  '''angstrom stable/2009''' is placed the locations shown below.~
 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
Configure the environment variable as it is described below.
 $ 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-

** Build X-Loader[#lb1808ff]
>
Obatin X-Loader, which is specific to bc10, and execute the build.~
 $ 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
After its build is completed, '''x-load.bin''' is created.
- Adjust the binary image~

>
The format of '''x-load.bin''' does not fit into the configurations of OMAP BootROM. As '''x-load.bin''' is read into NAND Flash or SD~
card without any modification, it does not work as a bootloader. Fixing this issue, '''x-load.bin''' is needed to be altered by~
'''signGP'''. The executable file of '''signGP''' is downloaded form [[here:http://beagleboard.googlecode.com/files/signGP]].~
~
'''signGP''' can be applied as it is defined below.
 $ ./signGP x-load.bin
'''x-load.bin.ift''' is created after applying '''signGP'''.~
Due to the specification of BootROM, '''x-load.bin.ift''' is saved as '''MLO''' when it is copied and saved in the root directory of~
the SD card.

* Place created image files in SD card (1) [#s3bc9746]
>
Some created files, which are required for booting bc10, are copied to a SD card. Read“[[Create bootable SD Card:http://labs.beatcraft.com/en/index.php?bc10%2Fbooting#mef5758b]]” section of  [[bc10/booting]],~
create FAT32 and Linux partitions in the SD card.~
(Hereafter FAT32 partition and Linux partition are named and called LAVBEL1 and LABEL2, respectively.)~
~
As the intended OS, which is booted from U-Boot, is a Linux, this is how files should be placed and organized inside the SD card.~
- FAT32 partition
-- X-Loader
-- U-Boot
-- Linux kernel
-- boot.scr
- Linux partition
-- Linux root file system

** FAT32 partition [#o1686f4c]
>
- X-Loader~

>
As X-Loader, the first bootloader, is placed on SD card, there are several restrictions on the method of placing it. Please follow the~
instructions written below.~
+ After formatting FAT32 partition, '''x-loader''' is the first to be placed.
+ It will be put on the top directory of FAT32 partition.
+ Change the name from '''x-loader''' to '''MLO'''.

>
 $ cd  ~/bc10/x-load-bc10
 $ cp x-load.bin.ift /media/LABEL1/MLO
This X-Loader is specifically designed for bc10, and it will not be modified in the farther sections.~

>
- u-boot.bin~

>
Below the directory, '''angstrom-setup-scripts/build/temp-angstrom_2008_1/deploy/glibc/images/beagleboard''', '''u-boot-beagleboard.bin''' ~
is created. '''u-boot-beagleboard.bin is changed as '''u-boot.bin''', and it is copied to FAT32 partition.~
 $ 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~

>
Under the same directory, in which '''u-boot-beagleboard.bin''' is found, there is '''uImage-beagleboard.bin''' , and its name is~
changed to '''uImage''' and copied to FAT32 partition.
 $ cp uImage-beagleboard.bin /media/LABEL1/uImage

>
- boot.scr~

>
Create '''boot.scr''', in the same way as it has been created in [[bc10/rowboat-eclair-dsp:http://labs.beatcraft.com/en/index.php?bc10%2Frowboat-eclair-dsp-4#yaffd8ba]]. This file creates the same contents as '''setenv'''~
configures in the serial console of the u-boot's command prompt. This setting significantly reduces the time since it does not~
require the configuration as each time X-Loader is booted. This is also configured for not changing memory mapping. To follow~
the instructions, create '''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
This file is treated as a parameter, execute '''mkimage'''  as it is shown below.
 $ mkimage -A arm -O linux -T script -C none -a 0 -e 0 -n ./boot.script -d ./boot.script ./boot.scr &> /dev/null
The created '''boot.scr''' and is copied into FAT32 of the SD card.
 $ sudo cp boot.scr /media/LABEL1/

** Linux partition [#ad78cad0]
>
These three files are copied into Linux partition.~
- Angstrom-base-image-glibc-ipk-20009.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/

>
This is the end of placing '''userland''' of Linux. This ends the first part of installing the image files to the SD card. Then, make sure that~
Angstrom starts booting after the SD card is placed and power is turned on.~

>
This is the boot log of this section. Please use it for reference.
#ref(oe1stboot.txt);

* Create Angstrom image (2) [#l7598781]
>
As the previous section has been successfully completed, build u-boot customized for bc10 and bc10-rowboat-kernel. As kernel is~
replaced, u-boot is also changed.~

** u-boot build [#t802dc7b]
>
Download the source of bc10 specific u-boot, and build it.
 $ 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
After the build is completed, '''u-boot.bin''' is created.

** bc10-rowboat-kernel build [#x3a9f099]
>
 $ 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
After ending the build process, '''uImage''' is created.~
 $ ls ~/bc10-rowboat-kernel/arch/arm/boot/
 Image  Makefile  bootp  compressed  install.sh  uImage  zImage

*** modules build [#zf85347d]
>
 $ cd ~/bc10-rowboat-kernel/
 $ mkdir mod_work
 $ make ARCH=arm DEPMOD=echo INSTALL_MOD_PATH=mod_work modules_install
At the end of execution, DEPMOD is displayed. (Caution)~
 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

>
(Caution): As'''kernel config''' enables "Automatically append version information to the version string", the~
last six digits of version information may be automatically changed. For instance, in 2.6.32-bc10-gxxxxxx,~
the value of xxxxxx may be frequently changed.~
 $ git rev-parse  -- verify HEAD
 dfb6acc.....
Or, use a command to check the version.~
 $ make kernel release
 2.6.32-bc10-gdfbacc


* Place created image files in SD card (2) [#cf18abd5]
>
The SD card is re-mounted on the build machine.~
(Assume that the location of mount is the same as the previous time.)~

** FAT32 partition [#cbb33d51]
>
- u-boot.bin~

>
Erase the previous '''u-boot.bin'''.
 $ rm /media/LABEL1/u-boot.bin 
 $ cd ~/u-boot-bc10/
 $ cp u-boot.bin /media/LABEL1/u-boot.bin

>
- Linux kernel~

>
Also remove the old Linux kernel.
 $ rm /media/LABEL1/uImage
 $ cd ~/bc10-rowboat-kernel/arch/arm/boot/
 $ cp uImage /media/LABEL1/uImage


***Linux partition [#jb63841f]
>
'''module''' is copied to Linux partition, freshly.~
 $ cd ~/bc10-rowboat-kernel/
 $ sudo tar xvfz modules-2.6.32-bc10-gdb6acc.tgz -C /media/LABEL2/
This is the end of installation.~

>
This is the boot log. Please use it for comparison.~
#ref(oe4thboot.txt);

* Reference [#e12684cb]

- Ubuntu 10.04  development environment 
-- 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 environment build
-- http://docs.openembedded.org/bitbake/html/
-- http://wiki.openembedded.net/index.php/Stable
-- http://www.angstrom-distribution.org/building-angstrom
-- http://wiki.openembedded.org/index.php/OEandYourDistro#Using_OpenEmbedded_on_Linux_systems

- x-loader build
-- http://beagleboard.googlecode.com/files/signGP
 

* Revision History [#u535603b]
>
2010/07/23 The article is initially listed. It discuss up to how to create OpenEmbedded build environment.~
2010/10/07 The article is rewritten. The new article explains the whole process of installation of OpenEmbedded Linux.~
2010/10/13 Add information of how to find the value of version.~
2010/12/01 Fix a typo. At the fourth set of code from the top, change from dockbook to docbook, removing '''k'''.~
2011/03/03 Add  the information of change in the build system.~

Front page   Edit Diff Backup Upload Copy Rename Reload   New List of pages Search Recent changes   RSS of recent changes