2008年9月10日 星期三

build出s3c2410x的 uboot.bin

Introduction就不提了
因為手中的板子是samsung 2410x的板子
所以就來build個可放在2410上的 bootloader
因為2410是 arm的processor所以首先將cross compiler裝起來
先至gnu arm 下載 看是喜歡自己重新build或是 直接使用己build 好的binary 包
依個人需求下載囉
下載好將path做個設定
令/etc/profile
多加一行 export PATH=$PATH:/usr/local/gnuarm-3.4.3/bin
以上為個人的設定,請依自己放置的路徑放置
方便可不用再每次都要設定
設好後測試一下,重新登入後,在console試一下
[root@localhost local]# arm-elf-gcc -v
Reading specs from /usr/local/gnuarm-3.4.3/bin/../lib/gcc/arm-elf/3.4.3/specs
Configured with: ../gcc-3.4.3/configure --target=arm-elf --prefix=/srv/shared/gnuarm/gnuarm-3.4.3 --enable-interwork --enable-multilib --with-newlib --with-headers=../newlib-1.12.0/newlib/libc/include --enable-languages=c,c++,java --disable-libgcj
Thread model: single
gcc version 3.4.3
這個部份很重要哦 先記一下我的compiler 是要用到是
arm-elf-gcc
若在cygwin環境下的朋友,請要 至 bin下確認 gcc的正確名字是什麼
我記在cygwin下的cross-compiler不是用這個名字 等會介紹 為什麼要記住這個部份
ok看到版本號碼 cross-compiler 己經完成
接著至sourceforge下載 uboot 現在的版本是 1.1.6版
下載後將它解壓縮 tar -jxvf u-boot-1.1.6.tar.bz2
進入u-boot cd u-boot-1.1.6
剛才有提到我的cross-compiler是
arm-elf-gcc
所以在Makefile我們需設定我的 CROSS_COMPILE
arm-elf- 沒錯就只要設到這裡就好
請依照Makefile內的內容做設定
(在原本的
CROSS_COMPILE後接的可能是 arm-linux-)
因為我們要biuld的是s3c2410x的bootloader
所以我們要請make指令幫我們做個configure
make smdk2410_config (i.e.若是其它的processor即make xxxx_config)
接著
再下
make
當我們看到了
arm-elf-objcopy --gap-fill=0xff -O binary u-boot u-boot.bin
這行字時,ok 我們bootloader就完成了
u-boot u-boot.bin


沒有留言:

張貼留言