3.3.6. Build on Fedora

This section describes how itom and its plugins are built on Fedora (tested with Fedora 25). For general information about building itom under linux, see the build instructions for linux.

In the following, all required steps are indicated to get the dependencies, get the sources and compile itom by the command line. The folder structure is chosen to be equal than the one from the linux instructions, however itom will only be build in a release version.

Please execute the following commands in the command line to get the dependencies for itom (comments after the hash-tag should not be copied to the command line):

sudo dnf install cmake cmake-gui git
sudo dnf install gcc gcc-c++
sudo dnf install python3 python3-devel python3-numpy python3-pip #problem: python3-dev
sudo dnf install qt5 qt5-devel  # only Fedora < 35
sudo dnf install qt5-qtbase-devel qt5-qtbase-static qt5-qttools-devel qt5-qttools-static qt5-qtwebengine-devel qt5-qtsvg-devel  # Fedora >= 35
sudo dnf install opencv opencv-devel

sudo dnf install libv4l libv4l-devel #this is optional to get the video for linux drivers
sudo dnf install xerces-c xerces-c-devel xsd #this is optional to being able to compile the x3p plugin

In one line, the packages above are equal to (for Fedora >= 35):

sudo dnf install cmake cmake-gui git gcc gcc-c++ python3 python3-devel python3-numpy python3-pip qt5-qtbase-devel qt5-qtbase-static qt5-qttools-devel qt5-qttools-static qt5-qtwebengine-devel qt5-qtsvg-devel opencv opencv-devel libv4l libv4l-devel xerces-c xerces-c-devel xsd

If you want to compile itom with support from the Point Cloud Library, also get the following packages:

sudo dnf install pcl pcl-devel proj-devel boost boost-devel

Now, change to the base directory, where the sources and builds of itom and its plugins should be placed. The following commands are not executed with super-user rights; prepend sudo if this is required.

Fedora version < 35

In comparison to building itom under Debian based Linux versions, the CMake configuration process under Fedora needs some more hints about where to find some libraries etc. Therefore, it might be, that you have to adjust some pathes below. Currently, Qt5 is still built without webkit-support under Fedora, such that the WebEngine-support is not available. Therefore, the built-in helpviewer of itom has to be disabled. For building itom without point cloud support use:

mkdir -p itom/sources/itom itom/sources/plugins itom/sources/designerplugins
git clone https://bitbucket.org/itom/itom.git ./itom/sources/itom
git clone https://bitbucket.org/itom/plugins.git ./itom/sources/plugins
git clone https://bitbucket.org/itom/designerplugins.git ./itom/sources/designerplugins
mkdir -p itom/build/itom itom/build/plugins itom/build/designerplugins
cd itom/build/itom
cmake -G "Unix Makefiles" -DBUILD_WITH_PCL=OFF -PYTHON_LIBRARY=/usr/lib64/libpython3.5m.so -PYTHON_INCLUDE_DIR=/usr/include/python3.5m -BUILD_QTVERSION=Qt5 -Qt5_DIR=/usr/lib64/cmake/Qt5 -Qt5Core_DIR=/usr/lib64/cmake/Qt5Core -BUILD_WITH_HELPVIEWER=OFF ../../sources/itom
make
cd ../designerplugins
cmake -G "Unix Makefiles" -DBUILD_WITH_PCL=OFF -PYTHON_LIBRARY=/usr/lib64/libpython3.5m.so -PYTHON_INCLUDE_DIR=/usr/include/python3.5m -BUILD_QTVERSION=Qt5 -Qt5_DIR=/usr/lib64/cmake/Qt5 -Qt5Core_DIR=/usr/lib64/cmake/Qt5Core -BUILD_WITH_HELPVIEWER=OFF -DITOM_SDK_DIR=../itom/SDK ../../sources/designerplugins
make
cd ../plugins
cmake -G "Unix Makefiles" -DBUILD_WITH_PCL=OFF -PYTHON_LIBRARY=/usr/lib64/libpython3.5m.so -PYTHON_INCLUDE_DIR=/usr/include/python3.5m -BUILD_QTVERSION=Qt5 -Qt5_DIR=/usr/lib64/cmake/Qt5 -Qt5Core_DIR=/usr/lib64/cmake/Qt5Core -BUILD_WITH_HELPVIEWER=OFF -DITOM_SDK_DIR=../itom/SDK ../../sources/plugins
make

Fedora >= 35

For these versions, CMake is able to detect Qt5 and Python automatically. Additionally, the qt5 webengine is available:

mkdir -p itom/sources/itom itom/sources/plugins itom/sources/designerplugins
git clone https://bitbucket.org/itom/itom.git ./itom/sources/itom
git clone https://bitbucket.org/itom/plugins.git ./itom/sources/plugins
git clone https://bitbucket.org/itom/designerplugins.git ./itom/sources/designerplugins
mkdir -p itom/build/itom itom/build/plugins itom/build/designerplugins
cd itom/build/itom
cmake -G "Unix Makefiles" -DBUILD_WITH_PCL=OFF ../../sources/itom
make
cd ../designerplugins
cmake -G "Unix Makefiles" -DBUILD_WITH_PCL=OFF -DITOM_SDK_DIR=../itom/SDK ../../sources/designerplugins
make
cd ../plugins
cmake -G "Unix Makefiles" -DBUILD_WITH_PCL=OFF -DITOM_SDK_DIR=../itom/SDK ../../sources/plugins
make

With point cloud support use:

mkdir -p itom/sources/itom itom/sources/plugins itom/sources/designerplugins
git clone https://bitbucket.org/itom/itom.git ./itom/sources/itom
git clone https://bitbucket.org/itom/plugins.git ./itom/sources/plugins
git clone https://bitbucket.org/itom/designerplugins.git ./itom/sources/designerplugins
mkdir -p itom/build/itom itom/build/plugins itom/build/designerplugins
cd itom/build
cmake -G "Unix Makefiles" -DBUILD_WITH_PCL=ON -DPYTHON_LIBRARY=/usr/lib64/libpython3.5m.so -DPYTHON_INCLUDE_DIR=/usr/include/python3.5m -DBUILD_QTVERSION=Qt5 -Qt5_DIR=/usr/lib64/cmake/Qt5 -DQt5Core_DIR=/usr/lib64/cmake/Qt5Core -DBUILD_WITH_HELPVIEWER=OFF -DPCL_DIR=/usr/lib64/cmake/pcl -DBOOST_INCLUDEDIR=/usr/include -DBOOST_LIBRARYDIR=/usr/lib64 ../../sources/itom
make
cd ../designerPlugins
cmake -G "Unix Makefiles" -DBUILD_WITH_PCL=ON -DPYTHON_LIBRARY=/usr/lib64/libpython3.5m.so -DPYTHON_INCLUDE_DIR=/usr/include/python3.5m -DBUILD_QTVERSION=Qt5 -DQt5_DIR=/usr/lib64/cmake/Qt5 -DQt5Core_DIR=/usr/lib64/cmake/Qt5Core -DBUILD_WITH_HELPVIEWER=OFF -DPCL_DIR=/usr/lib64/cmake/pcl -DBOOST_INCLUDEDIR=/usr/include -DBOOST_LIBRARYDIR=/usr/lib64 -DITOM_SDK_DIR=../itom/SDK ../../sources/designerPlugins
make
cd ../plugins
cmake -G "Unix Makefiles" -DBUILD_WITH_PCL=ON -DPYTHON_LIBRARY=/usr/lib64/libpython3.5m.so -DPYTHON_INCLUDE_DIR=/usr/include/python3.5m -DBUILD_QTVERSION=Qt5 -DQt5_DIR=/usr/lib64/cmake/Qt5 -DQt5Core_DIR=/usr/lib64/cmake/Qt5Core -DBUILD_WITH_HELPVIEWER=OFF -DPCL_DIR=/usr/lib64/cmake/pcl -DBOOST_INCLUDEDIR=/usr/include -DBOOST_LIBRARYDIR=/usr/lib64 -DITOM_SDK_DIR=../itom/SDK ../../sources/plugins
make

3.3.6.1. Hints

If there is an SSL certificate error in the git clone process, try to add:

git -c http.sslVerify=false clone ...

to the clone command

3.3.6.2. Execute

Run the file qitom in the build/itom directory. Please give itom the rights to write files in the directory, e.g. the settings.ini file.

../_images/screenshot_fedora.png