Bender and GRUB1 "legacy"
Valery V. Sedletski
_valerius at ...73...
Wed Feb 21 20:43:54 CET 2018
On 20.02.2018 01:24, Valery V. Sedletski via genode-main wrote:
> Hi, I tried to boot Genode scenarios from my bootable flash stick. It
> uses GRUB 1 "Legacy". Tried to boot Genode/Nova with bender with GRUB
> "legacy" (actually, GRUB4DOS). I have the following entries in menu.lst:
> title Sculpt scenario (Genode/Nova)
> kernel /genode/bender
> module /genode/hypervisor hypervisor iommu serial novpid novga
> module /genode/sculpt/image.elf image.elf
> This scenario just hangs when booting. Does this work with GRUB2 only?
Ok, it appears that it works with GRUB1. This is NOVA hanged, for some
reason. GRUB does work. I thought, it is GRUB guilty, but no. If I
remove "novga", it shows CPU list and hangs. I tried to boot NOVA on
three machines. It hangs on all three. Why it could be?
> In GRUB2, I see loading the "multiboot2.mod" module. Is this a new
> version of Multiboot protocol? Could Bender work with older version of
> multiboot protocol? Or, is it possible to use Genode/Nova without
> Bender somehow with GRUB1?
Ok, no need. As I said above, GRUB1 works, so multiboot1 protocol should
> Also, is it possible for Genode build system to avoid assembling all
> modules into image.elf, so I could load them separately as multiple
> modules? (at least, older Genode versions did so)
Ok, I commented
# exec rm -rf [run_dir]/genode
out in genode/tool/run/boot_dir/nova
and now it does not remove the "genode" subdirectory, containing all the
binaries after "imahge.elf.gz" creation. But I see it creating "core.o"
object file, instead of "core" binary. How could I convert "core.o" to
"core"? I tried to link it like this:
/usr/local/genode-gcc/bin/genode-x86-gcc -o core core.o
but it complains about duplicate symbol: "__dso_handle". It has been
defined in crtbegin.o. Also, it tries to link with -lc and fails. What
should be correct way to link "core" binary?
More information about the users