fix(release): build linux-x86_64 on ubuntu-24.04 (glibc mismatch) - #37
Merged
Conversation
…'s glibc The prebuilt slim txiki.js assets are built on 24.04 images, so the linux-x86_64 job (ubuntu-22.04, glibc 2.35) downloaded a runtime it could not execute: tjs: /lib/x86_64-linux-gnu/libm.so.6: version `GLIBC_2.38' not found linux-arm64 was unaffected — its ubuntu-24.04-arm runner already matched. Moving the job to ubuntu-24.04 fixes the build and sets the shipped Linux binaries' floor at glibc 2.38 (Ubuntu 24.04+, Debian 13+), now documented in getting-started and headless-linux. Lowering that floor later is a two-line change: set from_source on the job and move it back to a 22.04 image. Also refreshes the docs that still claimed releases are macOS-only and that Linux has no prebuilt runtime.
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.
Problem
Build linux-x86_64failed in the v0.9.0 release run (job log):The prebuilt slim txiki.js assets are built on 24.04 images; the job ran on
ubuntu-22.04(glibc 2.35), sotjs compilecouldn't execute the runtime it had just downloaded.linux-arm64passed becauseubuntu-24.04-armalready matched. macOS x86_64/arm64 and Windows all succeeded.Fix
Move
linux-x86_64toubuntu-24.04.Consequence, now documented: the shipped Linux binaries need glibc 2.38+ (Ubuntu 24.04+, Debian 13+). Lowering that floor later is a two-line change — set
from_source: '1'on the job and move it back to a 22.04 image; the same slim profile then links against glibc 2.35.Docs
getting-started.md— releases are no longer described as macOS-only; states the glibc floor and that only macOS x86_64 builds the runtime from source.headless-linux.md— replaces the "prebuilt Linux binaries do not exist yet" notice with the actual assets + glibc requirement.Re-releasing
deckbridge-v0.9.0is tagged but no GitHub Release was published (thereleasejob needs all builds green). After this merges, the tag has to be moved to the fix commit to re-triggerrelease.yml—auto-tag.ymlwon't re-fire, since the version is unchanged and the tag already exists.