mcommit's message

大阪でソフトウェア開発の仕事をしている simotinといいます。記事の内容でご質問やご意見がありましたらお気軽にコメントしてください\^o^/

FreeBSDをBeaglebone上で動かす

ちょっと思うところがあって、BeagleboneでFreeBSDを動かしてみたくなったので挑戦してみました。


挑戦といっても、このサイトを参考にさせて頂いただけなのですが。

FreeBSDをBeagleBoneで動かすには、ようするにSDカードにブートローダ(u-Boot)と
FreeBSDのカーネルとユーザランドがあればいいみたいなのですが、
そもそも私は普段はBSDユーザではないのでFreeBSDの環境を作るところから始める必要がありました。

FreeBSDの環境構築は、8.3(i386)のISOファイルをDLしてVMWareで構築しました。
※ちなみにOS Xでいつも使っているVirualBoxでは外付けのSDカードR/Wが利用できなかったので、
仕方なくWindows上のVmwarePlayerを使いました。

FreeBSDの環境さえできてしまえばサイトに書いてあることを順番に
やっていけば問題なくできます。
ただし、手順3と5に関して先に5の、
make TARGET_ARCH=arm TARGET_CPUTYPE=armv6 buildworld
を実行してから3の、
make TARGET_ARCH=arm KERNCONF=BEAGLEBONE buildkernel
を実行する必要がありました。

無事、Beeglebone上でFreeBSDが動いたのですが、
開発環境上のどこにarm用のクロスコンパイラがあるのかが分かっていません。
gccとかをキーワードに検索してみたのですが、それらしきファイルは見つからなかったしなぁ。

う〜ん。。。

--------------------------------------------------------------------------------------
■追記
--------------------------------------------------------------------------------------
・動作確認はWindows上からシリアルポートからのログインにより確認しましたが、通常のBeagleboneのイメージ(Linux)より若干遅い気がしました。※気のせいかもしれませんが。

FreeBSD on Beaglebone

12/4
起動はするけどネットワークに上手くつながらない。
※ping と ifconfigのログ


ping: sendto: No route to host


root@beaglebone:/root # ifconfig
cpsw0: flags=8843 metric 0 mtu 1500
options=8000b
ether 6f:c0:b0:1d:55:c0
inet 0.0.0.0 netmask 0xff000000 broadcast 255.255.255.255
nd6 options=29
cpsw_ioctl: SIOCGIFMEDIA
cpsw_ioctl: SIOCGIFMEDIA
media: Ethernet autoselect (100baseTX )
status: active
cpsw_ioctl: SIOCGIFMEDIA
lo0: flags=8049 metric 0 mtu 16384
options=600003
inet6 ::1 prefixlen 128
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x2
inet 127.0.0.1 netmask 0xff000000
nd6 options=21
root@beaglebone:/root #

何か設定に問題があるのか。。。

[2012/12/07]
ここのページに開発中だからEthernetへの対応は不完全と書かれていました。
自分で動かすように改造してみたい。