
This means not only kernel should be the same (w.r.t. its API/functionality) but also standard libc and other runtime libraries.
Yes, this is what I understood. I wasn't talking about portable *binaries*,
just about the ARM platforms which were efficient enough to run GHC.
I guessed one would have to re-compile her/his code with every platform (but
is that a big deal?).
2011/9/28 Karel Gardas
On 09/28/11 10:42 AM, Yves Parès wrote:
So currently, it's okay to make Haskell code that targets Android smartphones, the Beagleboard, the Raspberry Pi or the OpenPandora as long as you use the development version of GHC?
No, it's not that easy. As cross-compiling is not working (yet!) then your development and runtime platform needs to be the same. This means not only kernel should be the same (w.r.t. its API/functionality) but also standard libc and other runtime libraries. This means that since Android is using different libc than let say your ARM development board with Ubuntu installed, then you are not able to develop Android binary on Ubuntu/ARM development system.
So what you can do now is really just develop (or build) on ARM/Linux and deploy/run on the same ARM/Linux. Anyway, this is current stage, but IIRC people are working on making real cross-compilation working so this may change in the near future...
Karel