Skip to content

Commit 4e72862

Browse files
committed
Hotfix broken MPICH package in Ubuntu 24.04 LTS
1 parent 4a16f37 commit 4e72862

File tree

2 files changed

+40
-0
lines changed

2 files changed

+40
-0
lines changed

.github/workflows/ci.yml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,15 +24,27 @@ jobs:
2424
os:
2525
- ubuntu-24.04
2626
- ubuntu-22.04
27+
- ubuntu-24.04-arm
28+
- ubuntu-22.04-arm
29+
- macos-15
2730
- macos-14
2831
- macos-13
32+
- windows-2025
2933
- windows-2022
3034
- windows-2019
3135
exclude:
3236
- os: ubuntu-24.04
3337
mpi: msmpi
3438
- os: ubuntu-22.04
3539
mpi: msmpi
40+
- os: ubuntu-24.04-arm
41+
mpi: msmpi
42+
- os: ubuntu-22.04-arm
43+
mpi: msmpi
44+
- os: macos-15
45+
mpi: intelmpi
46+
- os: macos-15
47+
mpi: msmpi
3648
- os: macos-14
3749
mpi: intelmpi
3850
- os: macos-14
@@ -41,6 +53,10 @@ jobs:
4153
mpi: intelmpi
4254
- os: macos-13
4355
mpi: msmpi
56+
- os: windows-2025
57+
mpi: mpich
58+
- os: windows-2025
59+
mpi: openmpi
4460
- os: windows-2022
4561
mpi: mpich
4662
- os: windows-2022

setup-mpi.sh

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,29 @@ sudo () {
2323
"$@"
2424
}
2525

26+
hotfix-apt-ubuntu-noble-mpich() {
27+
grep -q 'ID=ubuntu' /etc/os-release || return
28+
grep -q 'VERSION_CODENAME=noble' /etc/os-release || return
29+
echo "Hotfix broken MPICH package in Ubuntu 24.04 LTS"
30+
echo "https://bugs.launchpad.net/ubuntu/+source/mpich/+bug/2072338"
31+
case "$(arch)" in
32+
aarch64)
33+
repourl=https://ports.ubuntu.com/ubuntu-ports
34+
package=libmpich12_4.2.0-14_arm64.deb
35+
;;
36+
x86_64)
37+
repourl=https://archive.ubuntu.com/ubuntu
38+
package=libmpich12_4.2.0-14_amd64.deb
39+
;;
40+
esac
41+
curl -sSO $repourl/pool/universe/m/mpich/$package
42+
tmpdir=/tmp/mpich
43+
libdir=/usr/lib/$(arch)-linux-gnu
44+
dpkg-deb -x $package $tmpdir
45+
mv $tmpdir$libdir/libmpich*.so.12.*.* $libdir
46+
rm -rf $package $tmpdir
47+
}
48+
2649
setup-apt-intel-oneapi () {
2750
# ensure the required packages are installed
2851
sudo apt update
@@ -106,6 +129,7 @@ case $(uname) in
106129
case $MPI in
107130
mpich)
108131
sudo apt install -y -q mpich libmpich-dev
132+
hotfix-apt-ubuntu-noble-mpich
109133
;;
110134
openmpi)
111135
sudo apt install -y -q openmpi-bin libopenmpi-dev

0 commit comments

Comments
 (0)