Hi,
A follow up. I attempted again to build the image following the basic tutorial from the manual, but I consistently have the same result: the image does not boot.
I was able to dig further in the error I am having, because I was able to get into an (initramfs) prompt when the boot fails to find /sbin/init.
If I unpack the initramfs.img file that live-build produces, then extract with cpio, I can see that the reported missing function from my previous messages (/init: Live: not found), is defined in the /lib/live/boot/9990-main.sh script. In the extracted folder from (cpio -id), the file has the right contents.
The problem is, when the live image boots, all scripts in that folder seems to be zeroed. When the boot fails to find /init (because mountroot fails), I get into an (initramfs) prompt. If I ls -l the file, it says it has the correct number of bytes. However, if I open the file with vi, I only see ^@ signs (i.e., the file is full of zeroes). If I cat the file, it displays no output.
So, the far i got was, /init fails because /bin/live-boot sources files from /lib/live/boot/*, and those files are zeroed, hence, the functions defined in those files does not get loaded, and the mountroot initramfs hook fails, making /init (inside initramfs) unable to find /sbin/init to boot the live system.
Any ideas on why this happened, or how can I fix it? Seems like a strange bug loading the initramfs image, but only when the live system boots; if I unpack the initramfs.img image, its contents seems ok.
One strange think I found is that, the scripts are correct inside /bin/boot/* (i.e., /bin/boot/9990-main.sh is correct, viewed from the initramfs boot prompt). Is there any reason why those scripts are both in /bin/boot and /lib/live/boot/* inside the initramfs?
Thanks!