build: downgrade multiarch to Ubuntu 20.04 and consolidate images#12830
Open
kannanjgithub wants to merge 1 commit into
Open
build: downgrade multiarch to Ubuntu 20.04 and consolidate images#12830kannanjgithub wants to merge 1 commit into
kannanjgithub wants to merge 1 commit into
Conversation
Downgrades the multiarch build environment from Ubuntu 24.04 to 20.04.
This ensures that native artifacts for aarch64 and ppc64le are linked
against glibc 2.31, providing better compatibility with older but
still-supported distributions (like RHEL 8 and Ubuntu 20.04).
Additionally, this consolidates s390x cross-compilation into the
multiarch image, removing the need for a separate ubuntu2004 base
image.
- Update Dockerfile.multiarch.base to use ubuntu:20.04
- Add g++-s390x-linux-gnu to multiarch image
- Update linux_artifacts.sh to use multiarch for all cross-builds
- Remove references to Dockerfile.ubuntu2004.base in build scripts
Summary of what this commit achieves:
1. Improves Compatibility: Lowering the glibc requirement from 2.39 (Ubuntu 24.04) to 2.31 (Ubuntu 20.04) prevents "version `GLIBC_2.XX' not found" errors when users try to run the artifacts on older
systems.
2. Simplifies CI: Merges the s390x toolchain into the multiarch image, reducing the number of Docker images the project needs to build and maintain.
3. Addresses Reviewer Feedback: Directly implements the "choice" of Ubuntu 20.04 suggested by the reviewer as a safer stopgap for the build.
Fixes grpc#12797.
8177491 to
306d8f2
Compare
ejona86
approved these changes
May 27, 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.
Downgrades the multiarch build environment from Ubuntu 24.04 to 20.04. This ensures that native artifacts for aarch64 and ppc64le are linked against glibc 2.31, providing better compatibility with older but still-supported distributions (like RHEL 8 and Ubuntu 20.04).
Additionally, this consolidates s390x cross-compilation into the multiarch image, removing the need for a separate ubuntu2004 base image.
Update Dockerfile.multiarch.base to use ubuntu:20.04
Add g++-s390x-linux-gnu to multiarch image
Update linux_artifacts.sh to use multiarch for all cross-builds
Remove references to Dockerfile.ubuntu2004.base in build scripts
Summary of what this commit achieves:
Fixes #12797.