Android is a screwed, hard-coded, non-portable abomination.
laforge.gnumonks.org
laforge.gnumonks.org
And J2ME is portable and that's truly an abomination.
My summary: Google hacked the snot out of linux to produce android.[1] The result is still nominally linux, but much of what a developer expects when you say "linux" is no longer there.
As a result of the hacking (including the lack of X11), it is going to be difficult (possibly to the point of being unrealistic) to port "standard" linux programs to android.
Trivia: Nokia's n770/n800/n810/n900 runs pretty vanilla linux and X11 with Hildon[2] (Maemo) layered on top for the user interface (on-screen keyboard, etc.). It still takes some effort to port a "standard" linux program to Nokia/Maemo, even though it is pretty straightforward. As a result, the number of available packages is nowhere near what you can get via Debian/Ubuntu.
[1] I image they did it to skinny up the memory footprint and speed it up (for some definition of "speed").
[2] It didn't help that Nokia kept the Hildon user interface layer closed source for several years.
And the idea of using X11 on a smart phone is laughable. Please, let's not continue to perpetuate that monstrosity on any more platforms.
for (char *p = strchr(tmpfn, ' '); p && *p; p = strchr(tmpfn, ' '))
*p = '_';
OW MY BRAIN.Cool. But what does this have to do with the article? (I apologize if I'm missing something, it is 3am afterall)
Kids these days.
char *p;
while (p = strchr(tmpfn, ' '))
*p = '_'; char *cp = NULL;
for(cp = tmpfn; cp && *cp; cp++)
if(isspace(*cp))
*cp = '_';my brain too
Maybe I'm missing something, as I'm not too familiar with android, but I thought that android apps were compiled to Dalvik, which is Java based? I fail to see how any traditional userland software would work anyway...
Android is not typical linux - it is not supposed to run on devices with gigabytes of fast memory running off AC outlet. When your memory bandwith is two orders of magnite lower, you have 128MB of it (on G1, 64MB of memory is used by the radio) and you are on battery, putting GNU system there would be not very smart - if you want something usable and with battery life longer than few hours, that is.
It was never meant to be a full Linux distribution. Most of the things that the presenter picks on (lack of SysV IPC, prelinked libraries, hand-optimized custom libc) were meant in the interest of performance, not portability.