Hello,
On 16.06.2017 08:39, Yevgeny Lavrov wrote:
Are there any suggestions on what might be causing linking between seL4 and Genode to fail? It fails once it reaches <genode>/tool/run/run: proc build_core {lib modules target link_address} with "undefined reference" errors.
Which "undefined references" ? If it is still the Log* methods, see below.
Do I need to add bootstrap to my build? The similar way it is done when compiling Genode with hw kernel? I would really appreciate any suggestions or ideas on where to look.
no, bootstrap of hw is a wrong direction. (It's specific for hw and can't be used with any other kernel.)
genode build completed using 'ld-sel4.lib.so' as 'ld.lib.so' using 'sel4/core.o' as 'core.o' core/sel4/core.o: In function `error<char const (&)[53], char const (&)[18], void*&, char const (&)[35], void*, char const (&)[2]>': ../genode-17.02/repos/base/include/base/log.h:131: undefined reference to `Genode::Log::log()' core/sel4/core.o: In function `warning<long unsigned int&, char const (&)[21], char const*, char const (&)[31]>': ../genode-17.02/repos/base/include/base/log.h:119: undefined reference to `Genode::Log::log()' core/sel4/core.o: In function `error<char const (&)[19], Genode::Avl_node_base*&, char const (&)[22]>': ../genode-17.02/repos/base/include/base/log.h:131: undefined reference to `Genode::Log::log()' .......
Log::log, e.g., is implemented in repos/base/src/lib/base/default_log.cc and normally compiled by repos/base-sel4/lib/mk/core-sel4.mk.
It seems that it is missing. Please check that you compile and link the file to core. Check that the symbol actually shows up as symbol in core.o, e.g. by examining the output of "readelf -s build/<arch>/core/sel4/core.o".
Cheers,