Skip to content

engines: build Linux binaries in manylinux_2_28 so they run on glibc < 2.38 - #1805

Merged
swapnilpaliwal-sd merged 1 commit into
0.1.9from
fix/linux-glibc-floor
Sep 30, 2026
Merged

swapnilpaliwal-sd merged 1 commit into
0.1.9from
fix/linux-glibc-floor

Conversation

@swapnilpaliwal-sd

Copy link
Copy Markdown
Contributor

Every Linux engine binary since the first release needs GLIBC_2.38, because it is compiled on ubuntu-24.04. A binary only runs where the glibc it was built against, or a newer one, is installed. So axiomcode index fails with GLIBC_2.38 not found after parsing the tree on:

  • Ubuntu 22.04
  • Debian 12, which is the base of the official python and node Docker images
  • RHEL/Rocky 9
  • Amazon Linux 2023

Both linux-x64 and linux-arm64 are affected, in 0.1.3, 0.1.6, 0.1.7 and 0.1.8.

Change

  • The Linux compile step now runs inside manylinux_2_28 (glibc 2.28, GCC 14) on the same runners.
  • A new step fails the build if any Linux binary needs a glibc newer than 2.28.
  • The engine cache key already hashes this workflow file, so no binary built on the old runner can be restored from cache.

Verified

…ld on a glibc above 2.28

Every Linux engine since the first release needed GLIBC_2.38: they were compiled on ubuntu-24.04
(glibc 2.39), and a binary runs only where its build machine's glibc or a newer one is installed. They
would not start on Ubuntu 22.04, Debian 12, RHEL/Rocky 9 or Amazon Linux 2023: the official python and
node Docker images, most CI and most servers. `axiomcode index` there parsed the whole tree and then
failed with "GLIBC_2.38 not found".

The compile now runs inside manylinux_2_28 (glibc 2.28, GCC 14) on the same runners, and a new step
fails the build if any Linux binary asks for a newer glibc. Built this way the engines need glibc 2.25,
link no libstdc++, and run on Ubuntu 20.04, Debian 11, Rocky 8 and Ubuntu 22.04. The cache key already
hashes this file, so no binary built on the old runner is restored.

Co-authored-by: axiomcode-bot[bot] <334110751+axiomcode-bot[bot]@users.noreply.github.com>
@swapnilpaliwal-sd
swapnilpaliwal-sd merged commit 31ed1d8 into 0.1.9 Sep 30, 2026
18 checks passed
@swapnilpaliwal-sd
swapnilpaliwal-sd deleted the fix/linux-glibc-floor branch September 30, 2026 03:21
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.

1 participant