Check presence of *all* required programs during configure
I tried to install and launch nmad into a Docker container (Debian-based) to see what are the minimum packages to install to build and execute nmad.
It turns out by default ps
(from package procps
) is not installed by default in the container and there is no check for that. It was doing a weird loop in https://gitlab.inria.fr/pm2/pm2/-/blob/master/PadicoTM/PadicoBoot/padico-launch.in?ref_type=heads#L4-10, printing nothing but an echo
at the very beginning of the script was flooding my terminal
padico-launch
requires hwloc-bind
and hwloc-distrib
(from hwloc
package). I installed libhwloc-dev
but forgot to install hwloc
, so the configure and build were successfull, but padico-launch
was complaining at execution time.
To sum up: please add fatal checks for programs ps
, hwloc-bind
and hwloc-distrib
.
For reference:
docker run -it debian:latest
cd
apt update
apt install git vim build-essential autoconf gcc g++ gfortran git pkg-config doxygen graphviz libexpat1-dev libhwloc-dev htop procps hwloc
git clone https://gitlab.inria.fr/pm2/pm2.git
cd pm2/scripts/
./pm2-build-packages --prefix=/home/philippe/dev/builds/pm2/ pukabi+madmpi-debug.conf
. /home/philippe/dev/builds/pm2//share/pukabi+madmpi-debug.conf.sh
padico-launch
mpirun -np 2 /home/philippe/dev/builds/pm2/bin/nm_sr_ping