Bender and GRUB1 "legacy"

Valery V. Sedletski _valerius at ...73...
Wed Feb 21 22:27:15 CET 2018


On 21.02.2018 22:43, Valery V. Sedletski via genode-main wrote:
> 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?
>
Now I found the

build_core [run_dir]/genode/$core_obj $modules [run_dir]/image.elf 
[core_link_address]

string  in genode/tool/run/run. I tried to change it to

build_core [run_dir]/genode/$core_obj [run_dir]/core [core_link_address]

but it does not like empty $modules list. How could I create core image 
with empty modules list?

PS: A feature request for Genode build system: May be, it would be good 
to add options for etc/build.conf, to disable removing the "genode" 
subdirectory, containing all the binaries, plus optionally generate 
"core" together with "image.elf", so that it will generate a core image 
without embedded modules. It would be more convenient if a developer 
wants to copy modules to some GRUB installation manually. So, one can 
run the run script to generate both the "image.elf" and separate 
binaries. This would allow both to 1) deploy the scenario on test 
machine automatically and 2) copy the scenario manually to GRUB config 
file. For manual copying, it would be more convenient to have separate 
binaries, so they are not duplicated in each scenario image.elf images, 
which both take much space on disk, and the same binaries can be reused 
in many scenarios. Also, with all modules built into the "image.elf", it 
is not very comfortable to edit the "config" files without regenerating 
the "image.elf".

WBR,
valery






More information about the users mailing list