2007-05-03

FreeBSD on IXP425 part 2

看了一些網路上相關的文章,後來終於compiler好了一個kernel,雖然不曉得在IXDPG425(Monte Jade)是不是也可以用,但是這個方法比前一篇的方法省事多了。AVILA的config檔是for另一塊開發板的,所以應該還要花點時間修改吧!我想,以下是步驟:
  1. 使用cvsup或csup,將source tree更新到7.0-CURRENT
    > cd /usr/src
    > make update
  2. 編譯for ARM的FreeBSD系統核心
    > cd /usr/src
    > make TARGET=arm TARGET_ARCH=arm buildkernel KERNCONF=AVILA
    > kernel的位置在/usr/obj/arm/usr/src/sys/AVILA/kernel.bin,這個kernel已經可以開機
  3. 製作rootfs的image檔
    > cd /usr/src
    > make TARGET_ARCH=arm TARGET_CPUTYPE=xscale TARGET_BIG_ENDIAN=true buildworld
    > make TARGET_ARCH=arm TARGET_CPUTYPE=xscale TARGET_BIG_ENDIAN=true DESTDIR=$ROOT installworld
    > for ARM版本的程式會被安裝到 $ROOT,再把需要的檔案做到rootfs即可
  4. 將rootfs的image檔和kernel整併在一起
    > strings -at d kernel.bin | grep "MFS Filesystem"
    3129956 MFS Filesystem goes here
    6275684 MFS Filesystem had better STOP here
    > head -c 3129956 kernel.bin > kernel.new
    > cat rootfs.bin >> kernel.new
    > tail -c +6275685 kernel.bin >> kernel.new
  5. 完成

沒有留言: