まずはクロスコンパイラのビルド。

Zaurusはxscale(arm)搭載なので、gccをビルドする事で簡単にクロスコンパイラを作れずはず。
早速、gcc4.2.2ベースのToolchainでチャレンジ。

いつものようにbinutil/gcc/glibcを準備してgccをビルドする。いつもと違うのはlanguage指定だけ。

・いつものクロスコンパイラ

--enable-languages=c,c++

・objective-c対応gcc

--enable-languages=c,c++,objc

出来上がったら母艦でクロスコンパイラーを動かしてみる。

$ arm-angstrom-linux-gcc hello.m -o hello -lobjc -static

その後、ターゲット(Zaurus)に"hello "をコピーして実行する。
今回のZaurusはpdaxrom(beta1)相当です。

$ ./hello
Illegal instruction

あれ、動かない。