Wed May 20 12:11:29 CEST 2009

OSD2 Debian arm

debootstrap --arch armel --foreign lenny neuros-debian/ http://debian.i/debian


Hmm.. i can't seem to get it..  chrooting into that image from the
neuros box gives this:

Illegal instruction

Let's try to run this:

# /bin/busybox-static
Illegal instruction

Something's wrong.. Either endianness is not LE or there's an ABI

http://cluster.aleph1.co.uk/~martin/qemu.html mentions something about
EABI binaries not being supported by qemu.

http://wiki.debian.org/ArmEabiPort talks about EABI and Debian.

http://wiki.debian.org/ArmEabiHowto has info on linux .config

You need to enable the following options to enable both EABI and OLDABI

The neuros box has:
# CONFIG_AEABI is not set

Apparently this needs GCC 4.0.0 and the neuros build uses 3.4.3
Linux version 2.6.23-davinci1 (tom@zzz) (gcc version 3.4.3 (MontaVista 3.4.3- 2005-07-23)) #5 Tue May 19 17:48:54 CEST 2009

Maybe it's easier to get a hold of a debian version with the old ABI
then to start changing the project's GCC version.

The old debian "arm" (instead of "armel") binaries do not work
either. Maybe it is this:

Trying with:

tom@zzz:~/src/neuros/linux-davinci-2.6$ diff .config .config.original 
< # Wed May 20 14:31:54 2009
> # Tue May 19 17:48:35 2009
< # CONFIG_FPE_NWFPE_XP is not set
> # CONFIG_FPE_NWFPE is not set

Static binary now works.

Trying chroot:
# chroot /neuros-debian-arm
chroot /neuros-debian-arm

Yes, that was it.
Let's try to boot from it.

Warning: unable to open an initial console.
I've run into that before... It's some device node missing.

indeed: this fixed it:
  mknod console c 5 1 

I probably just need to run the debootstrap stage 2 script..  Let's
boot with old image and try again: 

# chroot /neuros-debian-arm
# /debootstrap/debootstrap --second-stage
I: Base system installed successfully.

Let's try it.

I can login after enabling the T0 line in /etc/inittab and creating
the /dev/ttyS0 node

Then i get this: