From 6dadc6778f14feda438b9cba05155a52bf242f75 Mon Sep 17 00:00:00 2001 From: DeeDeeG Date: Mon, 2 Oct 2023 21:19:48 -0400 Subject: [PATCH] CI: Build binaries on older Linux for broader compatiblity Older Linux uses older glibc. Software linked against older glibc is generally *forward-compatible* for running on newer systems. But software linked against *newer* glibc is often not *backward-compatible* for running on older systems. So, we should pretty much build the binaries on whatever popular, still-supported Linux distro ships with oldest glibc. This is likely to be Debian or a RHEL-compatible distro, but we can try starting with the oldest one GitHub Actions supports natively, which I used here (Ubuntu 20.04 instead of Ubuntu 22.04/latest). Debian or a RHEL-compatible distro such as Alma Linux or Rocky Linux could be used via Docker, though, relatively easily. --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index f56ab7a977..9fc3b96a20 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -22,7 +22,7 @@ jobs: build: strategy: matrix: - os: [ ubuntu-latest, windows-latest, macos-latest ] + os: [ ubuntu-20.04, windows-latest, macos-latest ] fail-fast: false runs-on: ${{ matrix.os }}