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 mailing list