2379
Comment: typo
|
2726
armel d-i available
|
Deletions are marked like this. | Additions are marked like this. |
Line 1: | Line 1: |
== installing with d-i == It's now possible to install armel directly with d-i, using one of the images from here: http://people.debian.org/~joeyh/d-i/armel/images/daily/ nslu2 users should instead get an image from http://slug-firmware.net/ , if you need to use the onboard ethernet. The options below are for installing without d-i. |
installing with d-i
It's now possible to install armel directly with d-i, using one of the images from here: http://people.debian.org/~joeyh/d-i/armel/images/daily/
nslu2 users should instead get an image from http://slug-firmware.net/ , if you need to use the onboard ethernet.
The options below are for installing without d-i.
Building EABI ready Kernel
You need to enable the following options to enable both EABI and OLDABI
CONFIG_ARM_THUMB=y CONFIG_AEABI=y CONFIG_OABI_COMPAT=y
To simplify things, make sure you have all essential kernel modules built-in, since oldabi modprobe can't load EABI modules nor the other way around.
Creating a EABI chroot
Creating a chroot is the easiest way, if you just want to test building and running EABI applications.
The easiest way is to download http://armel.applieddata.net/developers/linux/eabi/armel-root-fs.tar.bz2 prebuilt rootfs]. And extract it somewhere. Then just chroot there.
creating chroot using debootstrap
See ?CrossDebootstrap for instructions on this. For the above repo you would use this command:
# debootstrap --verbose --arch armel --foreign sid /armel-chroot http://armel-debs.applieddata.net/debian
to put an armel chroot into the directory /armel-chroot.
Migrating arm installation to arm eabi installation
There is no proper way yet. The following instructions worked for me, but no guarantees at all.
- Create a chroot like above.
store your current package selections with "dpkg --get-selections > file"
enter your chroot and set the selections to match: "dpkg --set-selections < file"
- test install all the same applications to your chroot: "apt-get --no-act dselect-upgrade"
- backup
- boot into single user mode and make sure there is no processess running
- bind-mount / somewhere under the armel chroot, and move the directories (this is the scary part)
# mount -o bind / /chroot/armel/mnt/ # chroot /chroot/armel/ # cd /mnt # mkdir old # mv bin lib usr var old # relocate the old binary directores # cp -a /bin /lib /usr /var . # copy the armel binaryes and library directories to root # mv start-stop-daemon.REAL start-stop-daemon
At this point, make *sure* you have everything you need to boot and access your system under /mnt.
Exit the armel chroot and *REBOOT*. If it breaks, you get to keep the pieces.
If you are lucky, you have now a armel system. Finish the installation by pulling in the rest of packages you had installed:
apt-get -dselect-upgrade
TODO: recover old /var selectively.