gha/upgrade `linux-64` manylinux image
closes: https://github.com/numba/llvmlite/issues/1342
The linux-64 wheel build fails with -
++ bash mini3.sh -b -f -p /root/miniconda3
Installer requires GLIBC >=2.28, but system has 2.17.
This is because miniconda now requires glibc version > glibc available on container image - manylinux2014_x86_64
Checking build practices for manylinux builds on -
- cibuildwheel and
- https://quay.io/repository/pypa/manylinux_2_28_x86_64?tab=tags&tag=latest
found that they use newer
manylinux_2_28_x86_64forx86_64builds. This PR replacesmanylinux2014_x86_64withmanylinux_2_28_x86_64:2025.09.19-1onlinux-64wheel build workflow.
The llvmdev build used by workflow is built using older manylinux2014_x86_64 container and hence there is ABI mismatch. To resolve that, conditionally update -
export CXXFLAGS="-D_GLIBCXX_USE_CXX11_ABI=0 ${CXXFLAGS}"
for linux-64 builds.
would it make sense to rebuild llvmdev?
would it make sense to rebuild llvmdev?
Yes ideally. We should make the change to use new image for all 3 builds - llvmdev, llvmlite and numba. I can open PRs to update on all three. The condition to use older ABI is patch to make it work without re-building llvmdev.
#1346 solves the main branch build issue with a cleaner way. This PR would warrant more broader changes to llvmdev and numba builds as well and require testing llvmdev->llvmlite->numba. Hence, putting this change on hold for now until required.
#1346 solves the main branch build issue with a cleaner way. This PR would warrant more broader changes to llvmdev and numba builds as well and require testing llvmdev->llvmlite->numba. Hence, putting this change on hold for now until required.
OK, I merged #1346 and placed this one in the 0.47.0rc1 milestone.