Hi Norman,
just a follow up question: instead of putting a prebuilt binary of init into the repo I want to build it from source. Yet I haven't found out how to tell the build system to build it with completely custom options preferably via the target.mk. I tried to set CFLAGS and LDFLAGS there but the build system still does it's own linking which makes the binary segfaulting if executed on the host. Is there a way to do this or do I need to build it externally?
Regards, Johannes
Am 26.10.2017 um 13:39 schrieb Johannes Kliemann:
Hi Norman,
using a separate init to chdir also made the segfault disappear and I can now successfully run the timer test on Linux [1].
Regards, Johannes
On 10/25/17 11:39, Norman Feske wrote:
Hi Johannes,
for bootstrapping core, I'd create a custom (statically compiled) program that merely performs a 'chdir /genode' followed by 'execve '/genode/core'. This keeps core clean of the bootstrapping magic. This bootstrapping program can be called '/init' whereas everything Genode-related resides as '/genode/'.
I have no good idea about the segfault though. It definitely happens in init, not core because the fault occurs in 'ld.lib.so', which is not used by core. You may inspect the debug version of the ld.lib.so binary (using 'objdump -lSd debug/ld-linux.lib.so') at the faulting ip. The offset from the start of 'ld-linux.lib.so' can be calculated by subtracting the load address of ld.lib.so (as reported by the kernel) from the ip of the fault.
Cheers Norman
Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________ genode-main mailing list genode-main@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/genode-main