Requirements
Debian/Ubuntu
openEMS depends on the following packages for minimum functionality:
sudo apt-get install build-essential cmake git libhdf5-dev libvtk9-dev \
libboost-all-dev libcgal-dev libtinyxml-dev
Note: For earlier versions of Ubuntu you may have to choose an older later version of vtk, such as libvtk7-dev. VTK7 is the lowest version supported.
To use AppCSXCAD to visualize 3D models (recommended):
sudo apt-get install qtbase5-dev libvtk9-qt-dev
To use Octave scripting (recommended):
sudo apt-get install octave liboctave-dev
To use Python scripting (recommended):
sudo apt-get install python3-numpy python3-matplotlib cython3 python3-h5py
To use Paraview to visualize simulation results (recommended):
sudo apt-get install paraview
For the package hyp2mat you need additonal dependencies (optional):
sudo apt-get install gengetopt help2man groff pod2pdf bison flex \
libhpdf-dev libtool
Fedora
openEMS depends on the following packages for minimum functionality:
sudo dnf install cmake git \
boost-devel tinyxml-devel \
vtk-devel hdf5-devel CGAL-devel
To use AppCSXCAD to visualize 3D models (recommended):
sudo dnf install vtk-qt
To use Octave scripting (recommended):
sudo dnf install octave
To use Python scripting (recommended):
sudo dnf install python3-Cython python3-h5py python3-matplotlib
To use Paraview to visualize simulation results (recommended):
sudo dnf install paraview
For the package hyp2mat you need additonal dependencies (optional):
sudo dnf install gengetopt help2man groff perl-pod2pdf bison flex \
libharu-devel
FreeBSD
openEMS can be installed directly via FreeBSD Ports, there’s no need to install dependencies manually. Please skip to Install Ready-Made Package on FreeBSD for more information.
Also, note that On FreeBSD, the default CMake has a bug, causing it unable to find HDF5 for CSXCAD and openEMS (the ready-made package in FreeBSD Ports is fine). If you want to build openEMS manually, see _manual_freebsd_workaround_src for its workaround.
sudo pkg install cmake git boost-libs tinyxml \
vtk9 hdf5 cgal qt5
To use AppCSXCAD to visualize 3D models (recommended):
sudo pkg install qt5
macOS
openEMS can be installed via a Homebrew formula, there’s no need to install dependencies manually. Please skip to Install Ready-Made Package on macOS for more information.
The follow instructions are given for developers only, one should follow these instructions only if a manual install is needed during development.
brew install cmake boost tinyxml hdf5 cgal vtk
To use Octave scripting (recommended):
brew install octave
To use Python scripting (recommended):
pip3 install cython numpy h5py matplotlib --user
To use Paraview to visualize simulation results (recommended):
brew install paraview
Windows
openEMS can be installed directly as a pre-built binary package, there is no need to install dependencies (or build openEMS from source) manually. Please skip to Install Ready-Made Package on Windows for more information.
The follow instructions are given for developers only, one should follow these instructions only if a manual install is needed during development.
One can build openEMS on Windows using two different methods. The first method is using MSVC, this is how the official pre-built package is prepared, but it has a long and complicated procedure, and is currently undocumented.
Alternatively, MinGW-w64 and MSYS2 can be used.