Skip to content

Commit 5940228

Browse files
Fix binary compatibility issues with older glibc/libstdc++ (#6)
* Fix matrix testing strategy and Docker platform issues - Add fail-fast: false to prevent single test failure from stopping all tests - Skip arm64 Docker tests due to emulation issues on GitHub Actions - Add proper error handling and informative messages - Fix exec format error by removing problematic --platform flag - Ensure amd64 tests run properly while acknowledging arm64 compatibility - Architecture-independent packages work on both amd64 and arm64 * Fix binary compatibility issues with older glibc/libstdc++ - Use ubuntu-20.04 for builds instead of ubuntu-latest for better compatibility - Add static linking flags for libgcc and libstdc++ to reduce runtime dependencies - Update all CI jobs to use ubuntu-20.04 for consistency - Fix GLIBC_2.38 and GLIBCXX_3.4.32 not found errors - Ensure binaries work on older Ubuntu/Debian systems - Improve portability across different Linux distributions
1 parent ae1b535 commit 5940228

File tree

3 files changed

+6
-6
lines changed

3 files changed

+6
-6
lines changed

.github/workflows/apt-release.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ permissions:
2121

2222
jobs:
2323
build:
24-
runs-on: ubuntu-latest
24+
runs-on: ubuntu-20.04
2525
steps:
2626
- name: Checkout code
2727
uses: actions/checkout@v4

.github/workflows/ci.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ on:
1111
# https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions#jobs
1212
jobs:
1313
build-and-test:
14-
runs-on: ubuntu-22.04
14+
runs-on: ubuntu-20.04
1515
steps:
1616
- name: Checkout the repo
1717
uses: actions/checkout@v4
@@ -38,7 +38,7 @@ jobs:
3838
run: bazel test //src:all //src/quipper:all
3939

4040
test-deb-build:
41-
runs-on: ubuntu-latest
41+
runs-on: ubuntu-20.04
4242
steps:
4343
- name: Checkout code
4444
uses: actions/checkout@v4
@@ -94,7 +94,7 @@ jobs:
9494
retention-days: 7
9595

9696
test-apt-scripts:
97-
runs-on: ubuntu-latest
97+
runs-on: ubuntu-20.04
9898
needs: test-deb-build
9999
steps:
100100
- name: Checkout code

scripts/build-deb.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,9 @@ VERSION=$1 # e.g. "v1.2.3"
55
OUTDIR="$PWD/artifacts"
66
mkdir -p "$OUTDIR"
77

8-
# Build the project with Bazel
8+
# Build the project with Bazel (with static linking for better compatibility)
99
echo "Building perf_to_profile with Bazel..."
10-
bazel build //src:perf_to_profile
10+
bazel build --config=opt --linkopt=-static-libgcc --linkopt=-static-libstdc++ //src:perf_to_profile
1111

1212
# Install FPM (skip if FPM_SKIP_INSTALL is set, e.g., in CI)
1313
if [[ "${FPM_SKIP_INSTALL:-}" != "1" ]]; then

0 commit comments

Comments
 (0)