bc10-router/arago-project(danny)/Ubuntu12.04LTS †本稿は bc10-router/arago-project に記載した内容の更新版です。
上記の更新内容でビルド環境構築手順と bc10 への導入について記載します。 注2: arago-project のアップデートにより、予告無く本稿に記載している内容が ビルド環境構築 †以降ホストOSに Ubuntu 12.04LTS(Desktop、64bit版) がインストールされており、 本稿での主な変更点 †Setting Up Build Environment からの主な変更点は以下のとおりです。
注3: danny ブランチ、dylan ブランチは Yocto Project のブランチバージョンをあらわしています。 Ubuntu12.04LTS の Update と追加パッケージのインストール †ビルド環境を構築するために Ubuntu12.04LTS の Update と $ sudo apt-get dist-upgrade $ sudo apt-get install linux-image-generic-lts-saucy linux-headers-generic-lts-saucy arago-project のビルドに必要なパッケージをインストールします。 $ sudo apt-get install git build-essential diffstat texinfo gawk chrpath $ sudo apt-get install ia32-libs $ sudo dpkg-reconfigure dash また Setting Up Build Environment に記載はありませんが、libc6-dev-i386 が無いと $ sudo apt-get install libc6-dev libc6-dev-i386 以下のパッケージは使用環境に合わせて任意でインストールしてください。 $ sudo apt-get install vim lv nautilus-open-terminal $ sudo apt-get install ssh ビルド環境の設定 †arago-project をビルドするため Linaro 2013.03版 Toolchain の取得と展開をします。 $ mkdir ~/src $ cd ~/src $ wget --no-check-certificate https://launchpad.net/linaro-toolchain-binaries/trunk/2013.03/+download/gcc-linarolinux-gnueabihf-4.7-2013.03-20130313_linux.tar.bz2 $ tar -jxvf gcc-linaro-arm-linux-gnueabihf-4.7-2013.03-20130313_linux.tar.bz2 -C $HOME arago-project のファイルを取得し、danny ブランチの config 設定を行います。 $ cd ~/ $ git clone git://arago-project.org/git/projects/oe-layersetup.git tisdk $ cd tisdk $ ./oe-layertool-setup.sh -f configs/arago-danny-config.txt 上記コマンドを実行すると以下のようなログと共にビルドに必要なファイル、 ...<snip>... Resolving deltas: 100% (19437/19437), done. Already on 'master' Already up-to-date. Note: checking out '1.17.0'. ...<snip>... For example: MACHINE=xxxxx bitbake <target> Common targets are: core-image-minimal core-image-sato meta-toolchain meta-toolchain-sdk adt-installer meta-ide-support $ cd build/ $ . conf/setenv $ export PATH=$HOME/gcc-linaro-arm-linux-gnueabihf-4.7-2013.03-20130313_linux/bin:$PATH core-image-minimalのビルド †bitbake コマンドを実行すると、以下のようなログが出力されビルドが開始されます。 注4: 使用環境にもよりますがビルド完了までかなりの時間がかかります。 $ MACHINE=beagleboard bitbake core-image-minimal ...<snip>... Build Configuration: BB_VERSION = "1.17.0" TARGET_ARCH = "arm" TARGET_OS = "linux-gnueabi" MACHINE = "beagleboard" DISTRO = "arago" DISTRO_VERSION = "2013.06" TUNE_FEATURES = "armv7a vfp neon thumb callconvention-hard cortexa8" TARGET_FPU = "vfp-neon" meta-arago-distro meta-arago-extras = "danny:3a583c7ccb3392b6e14d67a4822a706071485bb2" toolchain-layer meta-oe = "danny:f00028caf257e386c0f3ae46bd4b3ba53dd0729d" meta-ti = "danny:72d4c5d37decfc8591981d3c8a859af6e6e68059" meta-linaro = "danny:d0558fa4304592622423582f8b464e1c22cfe6f1" meta = "danny:d6c69df33e5b447eb01ee7fca921b94c3a853203" ...<snip>... NOTE: Tasks Summary: Attempted 1412 tasks of which 216 didn't need to be rerun and all succeeded. Summary: There were 46 WARNING messages shown. ビルド完了後 ${HOME}/tisdk/build/arago-tmp-external-linaro-toolchain/deploy/images 以下に $ cd arago-tmp-external-linaro-toolchain/deploy/images/ $ ls -lh 合計 25M lrwxrwxrwx 1 beat beat 83 1月 28 19:54 MLO -> MLO-beagleboard-2012.04.01-r1+gitr1+415d386877df49eb051b85ef74fa59a16dc17c7d-arago0 lrwxrwxrwx 1 beat beat 83 1月 28 19:54 MLO-beagleboard -> MLO-beagleboard-2012.04.01-r1+gitr1+415d386877df49eb051b85ef74fa59a16dc17c7d-arago0 -rwxr-xr-x 1 beat beat 44K 1月 28 19:54 MLO-beagleboard-2012.04.01-r1+gitr1+415d386877df49eb051b85ef74fa59a16dc17c7d-arago0 -rw-rw-r-- 1 beat beat 294 1月 28 20:22 README_-_DO_NOT_DELETE_FILES_IN_THIS_DIRECTORY.txt -rw-r--r-- 1 beat beat 2.3M 1月 28 20:23 core-image-minimal-beagleboard-20140128065636.rootfs.tar.gz -rw-r--r-- 1 beat beat 4.9M 1月 28 20:23 core-image-minimal-beagleboard-20140128065636.rootfs.ubi -rw-r--r-- 1 beat beat 4.6M 1月 28 20:23 core-image-minimal-beagleboard-20140128065636.rootfs.ubifs lrwxrwxrwx 1 beat beat 59 1月 28 20:23 core-image-minimal-beagleboard.tar.gz -> core-image-minimal-beagleboard-20140128065636.rootfs.tar.gz lrwxrwxrwx 1 beat beat 56 1月 28 20:23 core-image-minimal-beagleboard.ubi -> core-image-minimal-beagleboard-20140128065636.rootfs.ubi -rw-rw-r-- 1 beat beat 9.2M 1月 28 19:53 modules-3.3.7-r125b+gitrv3.3.7-beagleboard.tgz -rwxr-xr-x 1 beat beat 329K 1月 28 19:54 u-boot-beagleboard-2012.04.01-r1+gitr1+415d386877df49eb051b85ef74fa59a16dc17c7d-arago0.img lrwxrwxrwx 1 beat beat 90 1月 28 19:54 u-boot-beagleboard.img -> u-boot-beagleboard-2012.04.01-r1+gitr1+415d386877df49eb051b85ef74fa59a16dc17c7d-arago0.img lrwxrwxrwx 1 beat beat 90 1月 28 19:54 u-boot.img -> u-boot-beagleboard-2012.04.01-r1+gitr1+415d386877df49eb051b85ef74fa59a16dc17c7d-arago0.img lrwxrwxrwx 1 beat beat 60 1月 28 19:53 uImage -> uImage-3.3.7-r125b+gitrv3.3.7-beagleboard-20140128065636.bin -rw-r--r-- 1 beat beat 3.3M 1月 28 19:53 uImage-3.3.7-r125b+gitrv3.3.7-beagleboard-20140128065636.bin lrwxrwxrwx 1 beat beat 60 1月 28 19:53 uImage-beagleboard.bin -> uImage-3.3.7-r125b+gitrv3.3.7-beagleboard-20140128065636.bin -rw-r--r-- 1 beat beat 230 1月 28 20:23 ubinize.cfg 以上で core-image-minimal のビルドは完了です。 core-image-minimal とは †core-image-minimal は arago-project をビルドする際の最小 package 構成のイメージです。 ${HOME}/tisdk/sources/oe-core/meta/recipes-core/images/core-image-minimal.bb また packagegroup-core-boot.bb というファイルを見ればどのような package から ${HOME}/tisdk/sources/oe-core/meta/recipes-core/packagegroups/ その他のイメージ recipe について †arago-project には core-image-minimal イメージ以外に下記の PATH に ${HOME}/tisdk/sources/meta-arago/meta-arago-distro/recipes-core/images/ core-image-minimal イメージ以外の recipe には以下ものがあります。 arago-amsdk-image.bb arago-base-image.bb arago-base-tisdk-image.bb arago-console-image.bb arago-core-tisdk-image.bb arago-core-tisdk-image.inc arago-image.inc tisdk-rootfs-image.bb tisdk-server-rootfs-image.bb また arago-image.inc は他のイメージから include される共通設定です。 ${HOME}/tisdk/sources/meta-arago/meta-arago-distro/recipes-core/packagegroup/ arago-console-image のビルド †core-image-minimal のイメージは busybox 由来のコマンドが大半を占め、 またその際に、 bc10-router/arago-project と同様のパッケージを導入できるよう ${HOME}/tisdk/sources/meta-arago/meta-arago-distro/recipes-core/packagegroups にある packagegroup-arago-console.bb を以下のように編集します。 $ diff -upN __packagegroup-arago-console.bb_orig packagegroup-arago-console.bb --- __packagegroup-arago-console.bb_orig 2014-01-29 14:59:28.755799860 +0900--- __packagegroup-arago-console.bb_orig 2014-01-29 14:59:28.755799860 +0900 +++ packagegroup-arago-console.bb 2014-01-30 12:38:03.058736885 +0900 @@ -51,6 +51,18 @@ ARAGO_UTILS = "\ iproute2 \ strace \ ltrace \ + bridge-utils \ + dnsmasq \ + grep \ + hostap-daemon \ + hostap-utils \ + iperf \ + iptables \ + iw \ + procps \ + openssh \ + openssl \ + rp-pppoe \ + wireless-tools \ ${@base_contains('MACHINE_FEATURES', 'pci', 'pciutils', '',d)} \ " 編集完了後、以下のコマンドを実行します。 $ cd ~/tisdk/build $ MACHINE=beagleboard bitbake arago-console-image ビルド完了後 ${HOME}/tisdk/build/arago-tmp-external-linaro-toolchain/deploy/images 以下に $ cd ~/tisdk/build/arago-tmp-external-linaro-toolchain/deploy/images $ ls -lh 合計 232M lrwxrwxrwx 1 beat beat 83 1月 28 19:54 MLO -> MLO-beagleboard-2012.04.01-r1+gitr1+415d386877df49eb051b85ef74fa59a16dc17c7d-arago0 lrwxrwxrwx 1 beat beat 83 1月 28 19:54 MLO-beagleboard -> MLO-beagleboard-2012.04.01-r1+gitr1+415d386877df49eb051b85ef74fa59a16dc17c7d-arago0 -rwxr-xr-x 1 beat beat 44K 1月 28 19:54 MLO-beagleboard-2012.04.01-r1+gitr1+415d386877df49eb051b85ef74fa59a16dc17c7d-arago0 -rw-rw-r-- 1 beat beat 294 1月 31 12:48 README_-_DO_NOT_DELETE_FILES_IN_THIS_DIRECTORY.txt -rw-r--r-- 1 beat beat 26M 1月 30 14:17 arago-console-image-beagleboard-20140130033805.rootfs.tar.gz -rw-r--r-- 1 beat beat 39M 1月 30 14:18 arago-console-image-beagleboard-20140130033805.rootfs.ubi -rw-r--r-- 1 beat beat 39M 1月 30 14:18 arago-console-image-beagleboard-20140130033805.rootfs.ubifs -rw-r--r-- 1 beat beat 26M 1月 31 12:54 arago-console-image-beagleboard-20140131034334.rootfs.tar.gz -rw-r--r-- 1 beat beat 40M 1月 31 12:55 arago-console-image-beagleboard-20140131034334.rootfs.ubi -rw-r--r-- 1 beat beat 40M 1月 31 12:55 arago-console-image-beagleboard-20140131034334.rootfs.ubifs lrwxrwxrwx 1 beat beat 60 1月 31 12:54 arago-console-image-beagleboard.tar.gz -> arago-console-image-beagleboard-20140131034334.rootfs.tar.gz lrwxrwxrwx 1 beat beat 57 1月 31 12:55 arago-console-image-beagleboard.ubi -> arago-console-image-beagleboard-20140131034334.rootfs.ubi -rw-r--r-- 1 beat beat 2.3M 1月 28 20:23 core-image-minimal-beagleboard-20140128065636.rootfs.tar.gz -rw-r--r-- 1 beat beat 4.9M 1月 28 20:23 core-image-minimal-beagleboard-20140128065636.rootfs.ubi -rw-r--r-- 1 beat beat 4.6M 1月 28 20:23 core-image-minimal-beagleboard-20140128065636.rootfs.ubifs lrwxrwxrwx 1 beat beat 59 1月 28 20:23 core-image-minimal-beagleboard.tar.gz -> core-image-minimal-beagleboard-20140128065636.rootfs.tar.gz lrwxrwxrwx 1 beat beat 56 1月 28 20:23 core-image-minimal-beagleboard.ubi -> core-image-minimal-beagleboard-20140128065636.rootfs.ubi -rw-rw-r-- 1 beat beat 9.2M 1月 28 19:53 modules-3.3.7-r125b+gitrv3.3.7-beagleboard.tgz -rwxr-xr-x 1 beat beat 329K 1月 28 19:54 u-boot-beagleboard-2012.04.01-r1+gitr1+415d386877df49eb051b85ef74fa59a16dc17c7d-arago0.img lrwxrwxrwx 1 beat beat 90 1月 28 19:54 u-boot-beagleboard.img -> u-boot-beagleboard-2012.04.01-r1+gitr1+415d386877df49eb051b85ef74fa59a16dc17c7d-arago0.img lrwxrwxrwx 1 beat beat 90 1月 28 19:54 u-boot.img -> u-boot-beagleboard-2012.04.01-r1+gitr1+415d386877df49eb051b85ef74fa59a16dc17c7d-arago0.img lrwxrwxrwx 1 beat beat 60 1月 28 19:53 uImage -> uImage-3.3.7-r125b+gitrv3.3.7-beagleboard-20140128065636.bin -rw-r--r-- 1 beat beat 3.3M 1月 28 19:53 uImage-3.3.7-r125b+gitrv3.3.7-beagleboard-20140128065636.bin lrwxrwxrwx 1 beat beat 60 1月 28 19:53 uImage-beagleboard.bin -> uImage-3.3.7-r125b+gitrv3.3.7-beagleboard-20140128065636.bin -rw-r--r-- 1 beat beat 231 1月 31 12:54 ubinize.cfg bc10への導入 †bc10/booting 起動用SDカードの作成の手順で作成されたSDカードを $ cp MLO-beagleboard-2012.04.01-r1+gitr1+415d386877df49eb051b85ef74fa59a16dc17c7d-arago0 /media/FAT/MLO $ cp u-boot-beagleboard-2012.04.01-r1+gitr1+415d386877df49eb051b85ef74fa59a16dc17c7d-arago0.img /media/FAT/u-boot.img $ cp uImage-3.3.7-r125b+gitrv3.3.7-beagleboard-20140128065636.bin /media/FAT/uImage $ sudo tar xvfz arago-console-image-beagleboard-20140130033805.rootfs.tar.gz -C /media/EXT3 以上で、SDへの書き込みは完了です。 bc10 の簡易起動確認 †上記のイメージを導入した SD を挿した bc10 を起動した際の bc10 - USB AC パワードハブ ---- LUA3-U2-ATX (USB Ether) | -- WLI-UC-AG300N (USB Wifi) ... <snip> ... Stopping Bootlog daemon: bootlogd. _____ _____ _ _ | _ |___ ___ ___ ___ | _ |___ ___ |_|___ ___| |_ | | _| .'| . | . | | __| _| . | | | -_| _| _| |__|__|_| |__,|_ |___| |__| |_| |___|_| |___|___|_| |___| |___| Arago Project http://arago-project.org beagleboard ttyO2 Arago 2013.06 beagleboard ttyO2 beagleboard login: root root@beagleboard:~# uname -a Linux beagleboard 3.3.7 #1 Tue Jan 28 18:39:28 JST 2014 armv7l GNU/Linux root@beagleboard:~# lsusb Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 001 Device 002: ID 05e3:0608 Genesys Logic, Inc. USB-2.0 4-Port HUB Bus 001 Device 003: ID 0b95:7720 ASIX Electronics Corp. AX88772 Bus 001 Device 004: ID 0411:012e BUFFALO INC. (formerly MelCo., Inc.) WLI-UC-AG300N Wireless LAN Adapter root@beagleboard:~# ifconfig -a eth0 Link encap:Ethernet HWaddr 4C:E6:76:55:49:C6 inet addr:192.168.0.152 Bcast:0.0.0.0 Mask:255.255.255.0 inet6 addr: 2001:268:321:8000:4ee6:76ff:fe55:49c6/64 Scope:Global inet6 addr: fe80::4ee6:76ff:fe55:49c6/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:39 errors:0 dropped:9 overruns:0 frame:0 TX packets:8 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:4162 (4.0 KiB) TX bytes:1416 (1.3 KiB) lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B) wlan0 Link encap:Ethernet HWaddr 00:1D:73:A2:97:97 BROADCAST MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B) 更新履歴 †2014/01/31 初稿公開 syariten
|