-
Notifications
You must be signed in to change notification settings - Fork 379
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Numerous bug fixes for musl and other images. #905
Conversation
This is a very preliminary draft (will need a CHANGELOG entry once it's more established), but it aims to do the following:
I also hope this will close #902, but this isn't there yet. This has fixed C++ support and other issues in a lot of targets, with the only ones failing with C++ or dynamic library support now are:
So, 2 targets link to glibc, and 2 targets have symbol errors in GCC. Those 2 symbol errors are issues with missing symbols from soft-float builtins. |
f629b21
to
510e91b
Compare
bors try |
tryBuild failed: |
I've fixed the bug with CI trying to use |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
looks good!
Would it make sense to actually have MUSL_SYSROOT
as an ENV
instead of simply a build arg?
If so we should probably prefix it as |
Provide `qemu-runner` that allows native or non-native for any architecture, and install `qemu-user` binaries for x86 musl images. In addition, create symlinks so dynamically-linked binaries can be run, including for C++, with musl images. Adding `qemu-user` runners is also useful for running dynamically-linked x86 binaries, since otherwise they may be unable to find the linked musl libc, and we cannot install it in `/lib` or `/usr/lib` due to conflicts with the system.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
bors r+
🚀
Build succeeded: |
Provide
qemu-runner
that allows native or non-native for any architecture, and installqemu-user
binaries for x86 musl images. In addition, create symlinks so dynamically-linked binaries can be run, including for C++, with musl images.Adding
qemu-user
runners is also useful for running dynamically-linked x86 binaries, since otherwise they may be unable to find the linked musl libc, and we cannot install it in/lib
or/usr/lib
due to conflicts with the system.