Skip to content

Use Docker images to build Linux versions to provide compatibility for older glibc versions - #1294

Open
andygruber wants to merge 12 commits into
uNetworking:masterfrom
andygruber:dockerbuild
Open

Use Docker images to build Linux versions to provide compatibility for older glibc versions#1294
andygruber wants to merge 12 commits into
uNetworking:masterfrom
andygruber:dockerbuild

Conversation

@andygruber

@andygruber andygruber commented Jul 21, 2026

Copy link
Copy Markdown

This should prevent unplanned increasing of the supported glibc version. Ubuntu 22.04 is used here which uses glibc 2.35. That also gives support for Debian Bookworm.

This addresses partly #1176 . To fully address this a change to Ubuntu 20.04 images would be required, but this also needs to manually install cmake instead of using it from the distro repo.

Full build is available here:
https://github.com/andygruber/uWebSockets.js/actions/runs/29865474294

@uNetworkingAB

Copy link
Copy Markdown
Contributor

ubuntu-22.04 is already supported natively by GitHub, you can just downgrade without any changes. The problem is that Node.js 26 raises compiler requirements very liberally, so a simple bump to 24.04 solved that. Any ancient Debian based distro will always have this problem of being, well ancient. It's a problem as old as time itself.

@andygruber

Copy link
Copy Markdown
Author

I totally agree with you on that.

Still, some projects, run on older base OS. And e.g. Bookworm is not that ancient, it is just 3 years old and will be supported for another 2. RHEL9 is supported for another 5 years with its regular support plan.

The Docker variant provides a stable interface and makes sure to be flexible enough concerning tooling. I saw the issue you mentioned and installed llvm16, which is the first sufficient compiler version.

RHEL9 support would also be possible by switiching to Ubuntu 20.04. Then I would need to install a custom cmake too, but that is also no problem, if you like that.

I really hope this could be integrated into upstream. But of course that is your decision.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants