Hello again,
On 2/1/23 14:18, Duss Pirmin wrote:
Hello Sebastian
Thanks for the quick patch.
On 01.02.23 13:26, Sebastian Sumpf wrote:
For Goa to build libraries the following version is required:
- repository: [email protected]:/gapfruit-community/goa.git
- branch: library_support
This, I could not find and used the one from GitHub.
This was okay. Sorry for putting the wrong repository there.
The attached patch [1] resolves the linking error for me, somehow the .got
ended up first in the DYNAMIC segment. Can you please check if it works for
you? However, I see a lot of undefined references to cxx.lib.a and pthread
stuff afterwards. Looks like "-Lllvm/var/abi/arm_v8a" is missing in the
linking command of libc++.lib.so. Additionally, "-lgcc" seems a little dangerous.
The patch indeed fixes the problem. I get the same linker errors that you
described now.
I think, these I can fix, by tweaking the Goa project.
Great. Two notes from my side:
1. libgcc is in ld.lib.so on Genode, so you should link against ld.lib.so or its
api and get rid of -lgcc and -static-libgcc. The pthread things are in libc.lib.so
2. Because of the error you encountered it might very well be that the resulting
shared object will not contain a .dynamic section. This would make it impossible
for the dynamic linker to load the library at runtime. So, please make sure with
! genode-aarch64-objdump -ph libc++.lib.so
that the library has a PT_DYNAMIC segment as well as a .dynamic section with
data in it once you got everything linked together. You can also send the output
here and I will have a look.
Good luck,
Sebastian
--
Sebastian Sumpf
Genode Labs
http://www.genode-labs.com · http://genode.org
Genode Labs GmbH · Amtsgericht Dresden · HRB 28424 · Sitz Dresden
Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth
_______________________________________________
Genode users mailing list
[email protected]
https://lists.genode.org/listinfo/users