2007-04-14

FreeBSD on IXP425

今天下午比較沒事,就去做了FreeBSD source code的更新,更新時無意間發現了FreeBSD已經port到IXP425的平台上了,所以就迫不及待的在網路上找找看有沒有相關的資料,果然,已經有對岸的網友已經有把資料放到網路上來了。以下把自己做的過程紀錄下來:


OS:FreeBSD-6.2-Release
  • 建立跨平台編譯環境
    1. 首先建立CrossTool要安裝的目錄,我放置在/usr/cross_arm,並且建立以下3個目錄
      > mkdir -p /usr/cross_arm/usr/bin
      > mkdir -p /usr/cross_arm/usr/include
      > mkdir -p /usr/cross_arm/usr/share
      在安裝的過程中你會發現有不少錯誤,大部份都是沒有這些目錄,把它們補上再重跑一次安裝即可。
    2. compiler GCC
      > cd /usr/src/gnu/usr.bin/cc
      > make TARGET_ARCH=arm TOOLS_PREFIX=/usr/cross_arm depend all
      > make DESTDIR=/usr/cross_arm instal
    3. compile LIBC
      > cd /usr/src/lib/libc
      > make TARGET_BIG_ENDIAN=Y
      > make DESTDIR=/usr/cross_arm install
    4. compiler BINUTILS
      > cd /usr/src/gnu/usr.bin/binutils
      > make TARGET_ARCH=arm TOOLS_PREFIX=/usr/cross_arm depend all
      > make DESTDIR=/usr/cross_arm instal
    5. 設定環境變數
      請依照你使用shell,去設以下的環境變數,bash、sh請用export,csh請用setenv
      > export AS=/usr/cross_arm/usr/bin/as
      > export NM=/usr/cross_arm/usr/bin/nm
      > export RANLIB=/usr/cross_arm/usr/bin/ranlib
      > export LD=/usr/cross_arm/usr/bin/ld
      > export OBJCOPY=/usr/cross_arm/usr/bin/opjcopy
      > export SIZE=/usr/cross_arm/usr/bin/size
      > export MACHINE=arm
      > export MACHINE_ARCH=arm
    6. 待續......
    7. 2007-05-03補
      這個方法有點麻煩,而且依網路上的文章去做..還是出現一些問題。

沒有留言: