Ubuntu

Many of the examples use command lines which show the commands and their arguments to get things done. The majority of the programs are available on both Windows & Linux flavors, but the details of the scripts very a bit. The main difference is between Windows cmd and Linux bash use of environment variables, loops and so on. On both Windows and Linux alternative command prompts are also available.
We restrict examples therefor to Ubuntu20 using bash. If you are using Windows as main platform, you can look at Install Ubuntu on WSL2 on Windows 10 WSL to get a working Ubuntu environment that is sufficient to run the examples.

Other linux flavors

For other linux flavors like Debian, CentOS, RedHat, ... we expect little difference in usage; the main difference is the package manager (apt versus rpm or pkg. Some of the examples have been tried also on FreeBSD13.1.

Ubuntu packages

On Ubuntu you can install the XML related tools easily via:
sudo apt -y install libxml2 xsdcxx xmlcopyeditor xsddiagram xmlstarlet

Python setup

The Python API is running with python3.6 and python3.8.

You need to install the following to work with the xPDK Python API:
pip install ruamel.yaml
pip install xmlschema

C++

For the C++ API the code has been tested using gcc. To use the xPDK Expression library, you will need also Bison and Flex. You can install these with:
sudo apt -y install gcc-9 bison flex

Boost.Python

wget https://boostorg.jfrog.io/artifactory/main/release/1.82.0/source/boost_1_82_0.tar.gz tar zxf boost_1_82_0.tar.gz cd boost_1_82_0 bootstrap.sh ./b2 --with-python if [ ! -e ~/user-config.jam ]; them echo 'using python : 3.8 ; using gcc : 9.4 : : -L'$PWD'/stage/lib ; ' > ~/user-config.jam export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$PWD/stage/lib" fi