- No frames
- No "best viewed with xyz"
- No invalid content
Most apps are available as binary packages so there's no real need to cross compile anything. Many kernel modules are missing however, so it's a good idea to setup a cross compiler anyway.
Sharp compiler
The most simple is to download the cross compiler binaries and kernel sources from sharp developer web site. These pages also include instructions to build a kernel.
The packages are only available in rpm format, so I used "alien" to install them on Debian GNU/Linux. They will install in /opt/Embedix/tools
Strangely, binutils-cross-arm is not available for download, so you'll have to pick it some place else, for example www.oesf.org
Kernel Compile
Follow carefully Sharp website instructions for the kernel configuration, especially when it comes to loading the default config, depending on the model. Akita is the codename for the Zaurus SL-C1000 series, Spitz for the C3000 and Borzoi for the C3100.
-- > load an Alternate Configuration File ..input "arch/arm/def-configs/akita-j"
You must also add /opt/Embedix/tools/bin to your $PATH so that the arm-linux-* binaries are usable
Using make menuconfig and make modules, I managed to compile the modules that I needed for ipsec, and for a usb-serial converter (pl2303.o)
Hello world
Now lets compile a simple program:
hello.c: int main() { printf ("hello world\n"); }
Use /opt/Embedix/tools/arm-linux/bin/gcc hello.c -o hello to compile
Other versions of gcc
It's possible to setup your own cross compiler, but be aware that the sharp ROM is compiled with gcc 2.95, therefore if you use gcc 3.x, kernel modules and possibly other things will not be compatible so it is best to stick with sharp compiler.
This page details all the steps to setup a cross development environment on Debian GNU/Linux