Installation (Linux, ARM)
For the basic PM4Py, we offer support for both the ARM32/ARM64 Linux operating systems.
The following instructions can be followed in order to install PM4Py on Linux/ARM (example, Raspberry). In the following, it is assumed that the underlying distribution is Debian-based (Debian, Ubuntu).
Install Python3 and Python3-PIP if needed:
# apt install python3 python3-pip
After that, install accessory packages needed to run PM4Py:
# apt install graphviz python3-numpy python3-scipy python3-matplotlib python3-pandas python3-pulp
And eventually the Python packages that are needed in addition to the previous through PIP (important: do not use pip3 install -U)
# pip3 install cython pyvis networkx>=2.4 ciso8601 lxml graphviz pydotplus scikit-learn sklearn pytz intervaltree
And eventually the PM4Py package (without -U and without deps)
# pip3 install --no-deps pm4py
Then, PM4Py is working perfectly 🙂 with the exception of the Pyarrow library that do not offer a binary on Linux.
The CVXOPT package is not available for the ARM32 platform. Hence, on Raspberry Pi Zero, Pi A, Pi A+, Pi B, Pi B+ or other ARM32 based machines it is impossible to perform the alignments.
In order to use the CVXOPT package for the alignments, the following instructions can be used. First, the CVXOPT package for ARM64 needs to be installed
# apt install python3-cvxopt
Then, the following command can be used to install PM4PYCVXOPT
# pip3 install --no-deps pm4pycvxopt
Beta: installation of Fastparquet (ARM64)
From 1.2.9, we will offer support for Fastparquet, that is a (slower) way to import/export Parquet files. This has been tested on ARM64 (ARM32 needs still to be tested).
Fastparquet requires some additional system dependencies to be installed:
# sudo apt install python3-numba python3-llvm
Then, some Python packages are needed:
# sudo pip3 install thrift python-snappy
Eventually, Fastparquet can be installed on the system
# pip3 install fastparquet
and from then onwards should work/import correctly.