Hello,the CLFS-2.0 book is almost good: it produces a system bootable in qemu with only minimal deviations, documented below. Screenshot is attached. One can repeat the steps in the book and below and reproduce the screenshot even without actually having an ARM board.
Deviations: 1) When building Glibc, don't install locales. It's just impossibble now.2) When building Shadow, don't run pwconv and grpconv, and don't set root password. 3) Use the attached kernel config (sorry, for old version of linux). Put boot/arm/zImage into /mnt/clfs/boot 4) After installing clfs bootscripts, remove /mnt/clfs/etc/rc.d/rcsysinit.d/S60setclock: ARM boards don't have RTC, and qemu just hangs if the setclock script is being run.
The result is the complete ARM system under /mnt/clfs. How to test without a real ARM board: 1) Install X window system, SDL and nfs-utils.2) Install gcc-3.4 and qemu from http://fabrice.bellard.free.fr/qemu/download.html (./configure --cc=gcc-3.4). Alternatively, if you don't want gcc-3.4, install the precompiled version of qemu from the same page. 3) Remount /mnt/clfs with the "noexec" option in order to avoid creating a root hole in the next step. 4) Export /mnt/clfs in /etc/exports as: /mnt/clfs 127.0.0.1(rw,no_root_squash,insecure,async) 5) Run qemu as: qemu-system-arm -kernel /mnt/clfs/boot/zImage -append "root=/dev/nfs nfsroot=10.0.2.2:/mnt/clfs,tcp,v3 ip=10.0.2.15:10.0.2.2:10.0.2.2:255.255.255.0:lfs:eth0:off" (the IP addresses are hard-coded in qemu, don't change them, they work). 6) Log in as root without password, run pwconv && grpconv && passwd root, generate your locale with localedef.
7) Try running other programs installed as a part of CLFS. Report bugs. -- Alexander E. Patrakov
config.gz
Description: application/gzip
-- http://linuxfromscratch.org/mailman/listinfo/lfs-dev FAQ: http://www.linuxfromscratch.org/faq/ Unsubscribe: See the above information page