From 366050fed5bcdfc3dc4e50b2e3ba71a2714f9c48 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?T=C3=B5ivo=20Leedj=C3=A4rv?= Date: Thu, 6 Feb 2025 09:35:35 +0100 Subject: [PATCH] GHA: Fix seemingly random -m32 build failures The 32-bit builds sometimes work and sometimes don't. This is an attempt at fixing these by moving installation of i386 libs earlier and explicitly installing gcc-multilib and g++-multilib. --- .github/workflows/CI.yml | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index 186c48ebd..ab02cdede 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -112,6 +112,14 @@ jobs: mkdir -p '${{ steps.vars.outputs.PKG_DIR }}' mkdir -p '${{ steps.vars.outputs.PKG_DIR }}'/bin + - name: "Ubuntu: Prepare multilib (i386)" + if: ${{ contains(matrix.job.os, 'ubuntu') && contains(matrix.job.ocaml-version, '-32bit') }} + run: | + sudo dpkg --add-architecture i386 + sudo apt-get update + sudo apt-get install gcc-multilib g++-multilib libgtk-3-dev:i386 libexpat1-dev:i386 + echo PKG_CONFIG_LIBDIR=/usr/lib/i386-linux-gnu/pkgconfig:/usr/share/pkgconfig:"$PKG_CONF_LIBDIR" >> "$GITHUB_ENV" + - name: Use OCaml ${{ matrix.job.ocaml-version }} uses: ocaml/setup-ocaml@v3 with: @@ -421,14 +429,6 @@ jobs: '@ | patch -Nu -p 1 opam pin --no-action add lablgtk3 . - - name: "Ubuntu: Prepare lablgtk install (i386)" - if: ${{ contains(matrix.job.os, 'ubuntu') && contains(matrix.job.ocaml-version, '-32bit') }} - run: | - sudo dpkg --add-architecture i386 - sudo apt-get update - sudo apt-get install libgtk-3-dev:i386 libexpat1-dev:i386 - echo PKG_CONFIG_LIBDIR=/usr/lib/i386-linux-gnu/pkgconfig:/usr/share/pkgconfig:"$PKG_CONF_LIBDIR" >> "$GITHUB_ENV" - # [2024-12] Recent dune release switched from using pkg-config to pkgconf. # However, pkgconf is broken in many environments and this breaks building # cairo2, a dependency for lablgtk3 (and likely would break lablgtk3, too,