4. Distribution Specific Information

This section lists all required system packages for compiling, building, and executing the SMR packages memcom, b2000pp, and simples under specific Linux distributions.

Please install cmake 3.22+ or download, compile, and install it yourself.

Note

Installing system packages requires root privileges.

4.1. Ubuntu 20, 22, 24, 25

Install an Ubuntu version 20+ “Desktop” distribution and create a Python virtual environment (see create a Python3 virtual environment for Python3 or create a Python2 virtual environment) for Python2.

Install the required Python packages for Python (see Python3 and Python2).

Install the following system packages for building memcom, b2000pp, and simples (if the system packages are already installed, apt either skips or updates them):

sudo apt-get install cmake python3 python3-dev swig flex bison \
gfortran m4 autoconf automake autotools-dev libtool openssh-server \
libxpm-dev git libnlopt-dev liblapack-dev libarpack2-dev \
libatlas-base-dev libtbb-dev libssl-dev libmpfr-dev libnlopt-dev \
libxcb-xinerama0 libpangocairo-1.0-0 girepository-2.0-dev \
libxcb-cursor0 libnlopt-dev liblapack-dev libarpack2-dev \
libatlas-base-dev libtbb-dev libssl-dev libmpfr-dev libnlopt-dev \
libxcb-xinerama0 libpangocairo-1.0-0 girepository-2.0-dev \
openssh-server doxygen libmumps-seq-dev libmumps-dev libmumps-scotch-dev

Install the following system packages for building and running the mcbrowser:

sudo apt-get install libgtk2.0-dev

Install the following Python3 packages (note: numpy and scipy installed with pip):

# Install numpy and scipy with pip, because of sphinx.
pip3 install --upgrade --force-reinstall pybind11 numpy scipy \
   'matplotlib>=3.3' PyGObject pandas

4.2. Ubuntu 20 with Python2

As Ubuntu 20 does not support Python 2 anymore, more precisely the various Python2 packages required by baspl++, you have to add an Ubuntu 18 repository to file apt/sources.list. Add the following line to the file apt/sources.list or uncomment the respective line in the file apt/sources.list:

deb-src http://it.archive.ubuntu.com/ubuntu/ bionic-updates main restricted

Install the following system packages for building and running baspl++ and fscon (Python2 packages):

# System packages baspl++ (python 2 packages):

sudo apt-get install python2-dev libgtk2.0-dev libglu1-mesa-dev \
freeglut3-dev mesa-common-dev libgl2ps-dev

Install the following Python2 packages:

pip2 install PyOpenGL decorator Image

Create a virtual environment for building the SMR packages, see Python Virtual Environments. If you intend to build the baspl++ package, install a Python 2 virtual environment. If you intend to build the b2000++ packages, install a Python 3 virtual environment.