Build instructions for PySide2

The OVITO package includes a distribution of the PySide2 module and Shiboken2 module licensed under the GNU Lesser General Public License (LGPLv3). In accordance with the requirements of this license, this page provides instructions on how to obtain or rebuild compatible versions of these binary modules from source.

Windows

OVITO for Windows ships with a copy of the PySide2 module that has been built from the original sources provided by the Qt Company, following the standard procedure described here. PySide2 v5.12 has been compiled against Qt 5.12.5 (msvc2017 64-bit) and a standard CPython 3.7 interpreter for Windows 64-bit:

# Build platform: Windows 10 64-bit
# Compiler: MSVC 2017
git clone --recursive https://code.qt.io/pyside/pyside-setup
cd pyside-setup
git checkout 5.12
python3.7 setup.py install \
  --ignore-git \
  --module-subset=Core,Gui,Widgets,Xml,Network,Svg \
  --skip-docs

Linux

OVITO for Linux ships with a copy of the PySide2 module that has been built from the original sources provided by the Qt Company, following the standard procedure described here. PySide2 v5.12 has been compiled against Qt 5.12.5 (see here) and a build of the standard CPython 3.7 interpreter:

# Build platform: CentOS 6.9
# Compiler: g++ 7.1 (CentOS devtoolset-7)
git clone --recursive https://code.qt.io/pyside/pyside-setup
cd pyside-setup
git checkout 5.12
python3 setup.py install \
  --qmake=$HOME/progs/qt5/bin/qmake \
  --ignore-git \
  --module-subset=Core,Gui,Widgets,Xml,Network,Svg \
  --skip-docs

macOS

OVITO for macOS ships with a copy of the PySide2 module that has been built from the original sources provided by the Qt Company, following the standard procedure described here. PySide2 v5.12 has been compiled against Qt 5.12.5 (macOS) and a standard installation of the CPython 3.7 interpreter for macOS (64-bit):

git clone --recursive https://code.qt.io/pyside/pyside-setup
cd pyside-setup
git checkout 5.12
sudo CLANG_INSTALL_DIR=$HOME/progs/libclang python3.7 setup.py install \
  --qmake=`echo $HOME/Qt/5.*.*/clang_64/bin/qmake` \
  --ignore-git \
  --module-subset=Core,Gui,Widgets,Xml,Network,Svg \
  --skip-docs