Quick Start

On Ubuntu 24.04 LTS, run the following commands to build and install DMPACK from source. First, install the dependencies:

$ sudo apt-get install gcc gfortran make pkg-config
$ sudo apt-get install --no-install-recommends curl ffmpeg gnuplot ghostscript \
  graphicsmagick groff gsfonts lua5.4 sqlite3 libblas-dev liblapack-dev libcurl4t64 \
  libcurl4-openssl-dev libfcgi-bin libfcgi-dev libhdf5-103-1t64 libhdf5-dev liblua5.4 \
  liblua5.4-dev libmodbus5 libmodbus-dev libpcre2-8-0 libpcre2-dev libsqlite3-0 \
  libsqlite3-dev libstrophe0 libstrophe-dev libzstd1 libzstd-dev zlib1g zlib1g-dev

Then, download and build DMPACK from source:

$ cd /tmp/
$ curl -O -L https://github.com/dabamos/dmpack/archive/refs/heads/master.zip
$ unzip master.zip
$ cd dmpack-master/
$ make linux

If the host platform is 64-bit ARM (AArch64), run instead:

$ make linux_aarch64

Install the DMPACK library and programs to /opt:

$ sudo make install PREFIX=/opt

Add path /opt/bin to the PATH environment variable in /etc/profile or ~/.profile to start DMPACK programs from command-line.

Afterwards, configure POSIX message queues. If the message queue file system is not mounted on /dev/mqueue already, run:

$ sudo mkdir -p /dev/mqueue
$ sudo mount -t mqueue none /dev/mqueue

Set the maximum number of messages and the maximum message size, and add the settings to /etc/sysctl.conf:

$ sudo sysctl fs.mqueue.msg_max=32
$ sudo sysctl fs.mqueue.msgsize_max=16384
$ sudo echo "fs.mqueue.msg_max=32" >> /etc/sysctl.conf
$ sudo echo "fs.mqueue.msgsize_max=16384" >> /etc/sysctl.conf

Verify the configuration by executing script runtests.sh in /tmp/dmpack-master. You can now use any DMPACK program, for example:

$ dminfo

See the next section for complete installation instructions.