Login  Register

Re: Cross compile jogl on beagleboard using ARM Cortex-A8 and angstrom linux

Posted by Wade Walker on May 17, 2011; 6:26pm
URL: https://forum.jogamp.org/Compile-jogl-on-beagleboard-using-ARM-Cortex-A8-and-angstrom-linux-tp2948554p2953592.html

xie_yonggang wrote
No i am not an experienced embedded developer
Neither am I, but I work at an embedded microprocessor company, so I've had a little exposure

xie_yonggang wrote
i think i misinterpret the meaning of "cross-compilation"
"Cross-compilation" means your compiler generates the binary for a processor that's different from the host it's running on. For example, with one of the CodeSourcery versions of gcc (http://www.codesourcery.com/), I can run gcc on x86 Linux, but it will produce an ELF binary that will run on ARM Linux. In this case the "host" processor is an x86, but the "target" processor is an ARM.

In a "normal" version of gcc that comes installed on Linux, the host and target are the same, so if you compile on x86, it produces x86 binaries that will not run on ARM. You can set up gcc to do cross-compilation yourself, but you have to build it from source (see http://en.wikipedia.org/wiki/Cross_compiler#GCC_and_cross_compilation), and you may need headers and libraries from the target platform.

It's now possible to run a full version of Linux on an ARM processor, so you can do "self-hosting" (compiling ARM binaries on ARM Linux) instead of the old-style embedded development that was always cross-compiled. But this will produce "normal" application programs that run under ARM Linux, not a "bare metal" binary that could be downloaded to an ARM-based phone, for example.

Could you describe what kind of program you're trying to write? What exact hardware/OS combination will it run on, who will use it, what is it for?