The scenario I am trying is to run a with the
hw kernel with arm_v8a arch.
First Issue: 'src/libc' not found - unable to guess version
Steps:
git clone ...
cd genode-dir
tool/create_builddir arm_v8a
# Add additional repos in the build.conf file.
cd build
make KERNEL=hw BOARD=virt_qemu_arm_v8a
make KERNEL=hw BOARD=virt_qemu_arm_v8a run/vmm_arm
# Returns the following errors:
including /home/siagraw/genode-hw/tool/run/power_on/qemu
including /home/siagraw/genode-hw/tool/run/log/qemu
including /home/siagraw/genode-hw/tool/run/boot_dir/hw
including /home/siagraw/genode-hw/repos/os/run/vmm_arm.run
Error: recipe for 'src/libc' not found - unable to guess version
make: *** [Makefile:431: run/vmm_arm] Error 1
So, I removed the libc line from vmm_arm.run, as per the diff below:
diff --git a/repos/os/run/vmm_arm.run b/repos/os/run/vmm_arm.run
index d80052352..a4ec448ab 100644
--- a/repos/os/run/vmm_arm.run
+++ b/repos/os/run/vmm_arm.run
@@ -16,7 +16,6 @@ if { ![have_board imx7d_sabre] && ![have_board imx8q_evk] &&
create_boot_directory t
import_from_depot [depot_user]/src/[base_src] \
[depot_user]/src/init \
- [depot_user]/src/libc \
[depot_user]/src/log_terminal \
[depot_user]/src/nic_router \
[depot_user]/src/terminal_crosslink \
After that, the VM boots up as below.
Second Issue: Failing mount command and no interactive shell.
[...]
[init -> vm] [ 6.227743] NET: Registered PF_PACKET protocol family
[init -> vm] [ 6.233521] Key type dns_resolver registered
[init -> vm] [ 6.249367] Loading compiled-in X.509 certificates
[init -> vm] [ 6.310832] Sending DHCP requests ., OK
[init -> vm] [ 6.361405] IP-Config: Got DHCP answer from 10.0.1.1, my address is 10.0.1.2
[init -> vm] [ 6.372772] IP-Config: Complete:
[init -> vm] [ 6.378516] device=eth0, hwaddr=02:02:02:02:04:05, ipaddr=10.0.1.2, mask=255.255.255.0, gw=10.0.1.1
[init -> vm] [ 6.387958] host=10.0.1.2, domain=, nis-domain=(none)
[init -> vm] [ 6.394173] bootserver=10.0.1.1, rootserver=10.0.1.1, rootpath=
[init -> vm] [ 6.394275] nameserver0=10.0.1.1
[init -> vm] [ 6.441325] Freeing unused kernel memory: 1152K
[init -> vm] [ 6.458228] Run /bin/sh as init process
[init -> vm] /bin/sh: can't access tty; job control turned off
[init -> vm] / # mount /dev/vda /root; cp -r /etc /root; ls /root/etc; umount /root
[init -> vm] mount: mounting /dev/vda on /root failed: No such file or directory <--- This seems to failing as there is nothing inside /dev in the VM. I tried an "ls" in my run script and that showed that /dev is empty.
[init -> vm] fstab init.d resolv.conf
Run script execution successful.
I have a few questions here:
- Was it ok to remove the libc line from the run script?
- I was expecting the VM to hang around with a shell. Is that not the expected behavior?
- I should be able to run this scenario of a rpi3, right? Instead of running inside Qemu(where I have effectively 2 level of virtualization from the point of the VM).
Best,
Sid