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