Repository navigation
fix(core): pin glibc to 2.17 - #1074
Merged
simonklee merged 3 commits intoMay 16, 2026
Merged
Conversation
kevinchappell
requested review from
Hona,
kommander,
msmps and
simonklee
as code owners
May 16, 2026 19:29
There was a problem hiding this comment.
Pull request overview
This PR lowers the Linux GNU glibc floor for OpenTUI’s native Zig builds from 2.28 to 2.17, improving compatibility with older enterprise Linux distributions while keeping the existing native build flow.
Changes:
- Updates supported Linux Zig targets for x86_64 and aarch64 to
linux-gnu.2.17. - Updates the build option help text example to match the new glibc target version.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
kevinchappell
force-pushed
the
fix/glibc-217-compatibility
branch
from
May 16, 2026 19:42
31a009d to
4164bb2
Compare
Member
|
Thanks, i'll test this locally. |
simonklee
approved these changes
May 16, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Tightens the Linux native target floor from glibc 2.28 down to 2.17, restoring compatibility with older enterprise distros (CentOS/RHEL 7, Amazon Linux 2, etc.) that have surfaced in opencode bug reports.
Follow-up to eb4e814 ("avoid GLIBC_2.29 requirement in linux prebuilds"), which pinned to 2.28 after the miniaudio change pulled in libm symbols. Confirmed nothing in the current native code requires symbols newer than 2.17, so we can safely drop the floor further without losing the GNU dynamic-linking behavior.
Verification
Built locally and confirmed the resulting
libopentui.sorequires only:GLIBC_2.2.5, GLIBC_2.3, GLIBC_2.3.2, GLIBC_2.4, GLIBC_2.7, GLIBC_2.10 or GLIBC_2.17
No 2.18+ symbols.
End-to-end tested via a compiled opencode binary running inside
centos:7(glibc 2.17),ubuntu:18.04(glibc 2.27), andalmalinux:8(glibc 2.28) containers. TUI launches cleanly in all three. Here are the files for testing:Test plan
x86_64-linuxandaarch64-linuxreadelf -V libopentui.so | grep GLIBC_shows no symbols aboveGLIBC_2.17resolves #27419