Package: libopenmpi-dev Version: 4.0.2-2 Severity: important Dear Maintainer,
The upgrade of Open MPI components from 3.1.3 to 4.0.2-2 did not complete successfully. During upgrade I got these warnings: Setting up libopenmpi-dev:amd64 (4.0.2-2) ... update-alternatives: warning: forcing reinstallation of alternative /usr/lib/x86_64-linux-gnu/openmpi/include because link group mpi-x86_64-linux-gnu is broken update-alternatives: warning: skip creation of /usr/lib/x86_64-linux-gnu/libmpi++.so because associated file /usr/lib/x86_64-linux-gnu/openmpi/lib/libmpi_cxx.so (of link group mpi-x86_64-linux-gnu) doesn't exist update-alternatives: warning: skip creation of /usr/lib/x86_64-linux-gnu/libmpi.so because associated file /usr/lib/x86_64-linux-gnu/openmpi/lib/libmpi.so (of link group mpi-x86_64-linux-gnu) doesn't exist As installed the libraries were not usable: $ make mpicc -O2 -march=native -fpie -std=c11 -D_Linux -D_XOPEN_SOURCE=700 -o mpi_mm.o -c mpi_mm.c mpicc mpi_mm.o -pie -Wl,-z,now -Wl,-z,relro -o mpi_mm_c.linux-gnu.x86_64 /usr/bin/ld: cannot find -lmpi /usr/bin/ld: cannot find -levent /usr/bin/ld: cannot find -levent_pthreads collect2: error: ld returned 1 exit status make: *** [makefile:31: mpi_mm_c.linux-gnu.x86_64] Error 1 I found that the failure to locate -levent and -levent_pthreads was because libevent-dev needs to be installed. The -lmpi load failure is because the symlink /usr/lib/x86_64-linux-gnu/openmpi/lib/libmpi.so -> libmpi.so.40.20.2 was missing when setup tried to create the symlinks /etc/alternatives/libmpi.so-x86_64-linux-gnu -> /usr/lib/x86_64-linux-gnu/openmpi/lib/libmpi.so and /usr/lib/x86_64-linux-gnu/libmpi.so -> /etc/alternatives/libmpi.so-x86_64-linux-gnu Running dpkg-query -L libopenmpi-dev shows that /usr/lib/x86_64-linux-gnu/openmpi/lib/libmpi.so should have been created, but it wasn't. On the off chance that a reinstallation might help, I reinstalled all the 4.0.2-2 packages. That time there were no issues reported, the symlinks appear to be good, and Open MPI 4.0.2 works on my test programs. $ showlinks /usr/lib/x86_64-linux-gnu/libmpi.so lrwxrwxrwx 1 root root 44 Nov 19 18:11 /usr/lib/x86_64-linux-gnu/libmpi.so -> /etc/alternatives/libmpi.so-x86_64-linux-gnu lrwxrwxrwx 1 root root 47 Nov 19 18:11 /etc/alternatives/libmpi.so-x86_64-linux-gnu -> /usr/lib/x86_64-linux-gnu/openmpi/lib/libmpi.so lrwxrwxrwx 1 root root 17 Nov 19 05:55 /usr/lib/x86_64-linux-gnu/openmpi/lib/libmpi.so -> libmpi.so.40.20.2 -rw-r--r-- 1 root root 1126552 Nov 19 05:55 /usr/lib/x86_64-linux-gnu/openmpi/lib/libmpi.so.40.20.2 That's similar to the 3.1.3 scheme that I still have on my Buster host. Is it possible that the installation script has a sequencing problem such that it tries to target /usr/lib/x86_64-linux-gnu/openmpi/lib/libmpi.so with a symlink from /etc/alternatives before it's been created? -- System Information: Debian Release: bullseye/sid APT prefers unstable APT policy: (500, 'unstable') Architecture: amd64 (x86_64) Kernel: Linux 5.3.0-2-amd64 (SMP w/2 CPU cores) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_US.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /usr/bin/dash Init: systemd (via /run/systemd/system) LSM: AppArmor: enabled Versions of packages libopenmpi-dev depends on: ii gfortran [gfortran-mod-15] 4:9.2.1-3.1 ii gfortran-9 [gfortran-mod-15] 9.2.1-19 ii libhwloc-dev 1.11.13-1 ii libibverbs-dev 26.0-2 ii libopenmpi3 4.0.2-2 ii openmpi-bin 4.0.2-2 ii openmpi-common 4.0.2-2 Versions of packages libopenmpi-dev recommends: ii libcoarrays-openmpi-dev 2.8.0-1 Versions of packages libopenmpi-dev suggests: pn openmpi-doc <none> -- no debconf information