2007年6月1日 星期五

build u-boot from sources

因為openmoko patch的u-boot有支援Samsung S3C24xx的stepping stone,所以build看看。

主要是follow這一篇文章 "Migration to bad block tolerant builds",說明比u-boot那一篇仔細 (但是我apply 609的patch沒有成功,所以還是使用main stream)。

工作的目錄是 /home/openmoko

裝好subvesion,設定svn使用proxy,在~./subversion/server中加入proxy server,port :

http-proxy-host = 10.1.1.200
http-proxy-port = 3000
checkout openmoko 到 openmoko 目錄
$ svn co https://svn.openmoko.org/ openmoko
安裝git-core,改變default git tool (debian etch)
$ aptitude install git-core
$ update-alternatives --config git
== 選 "git-scm"
export 好http_proxy,checkout u-boot
$ git clone http://www.denx.de/git/u-boot.git
(需要等待一段時間)

取得cross toolchain : 因為monotone出不去proxy (雖然mailing list中聲稱新版的monotone可以經過proxy,可是我這裡還是出不去),所以只好直接從 openmoko拿build 好的cross tool
$ wget -r -L http://buildhost.openmoko.org/tmp/cross
(需等待更長時間,且lib/下的檔案有些沒有抓回來,要確認一下,加上 "-c"抓沒抓到的folder。修改 bin 下的file,設為可執行。)

把抓下來的toolchain copy到 ..
/space/fic/openmoko/gta01/tmp/cross
設好PATH:
$ export PATH=/space/fic/openmoko/gta01/tmp/cross/bin:$PATH
u-boot - apply patch: (要先裝好quilt)
$ cd u-boot
$ export QUILT_PATCHES=/home/openmoko/openmoko/trunk/src/target/u-boot/patches
$ quilt push -a
Ok,沒有error message。

build u-boot - config and make:
$ make ARCH=arm gta01bv2_config
$ make ARCH=arm
完成。

沒有留言: