Building: Ubuntu - Xisabla/AtilaCalculatorSoftware GitHub Wiki

Building on Ubuntu

This page describes the process to build the project on Ubuntu (20.04 LTS)

Dependencies

First you will need the following aptitude packages installed:

sudo apt install build-essential \
    cmake \
    git \
    libglew-dev \
    libhdf5-dev \
    libqt5x11extras5-dev \
    libxt-dev \
    python3-dev \
    qt5-default \
    qttools5-dev \
    tree \
    wget \
    zip \
    zlib1g

Then, you will need to build and install gidpost

wget https://www.gidhome.com/archive/Tools/gidpost/gidpost-2.7.zip
unzip gidpost-2.7.zip
# Fixes error on linux due to undefined windows related variables
sed -i '8,18 s/^/#/' gidpost-2.7/CMakeLists.txt
cmake -S gidpost-2.7/ -B gidpost-2.7/build/
make -C gidpost-2.7/build/ -j$(($(nproc) - 1))
sudo make -C gidpost-2.7/build/ install

You will finally need to install VTK and build the required modules:

git clone https://gitlab.kitware.com/vtk/vtk.git
cd vtk
git checkout tags/v8.2.0
cd ../
cmake \
    -DBUILD_SHARED_LIBS=ON \
    -DBUILD_TESTING=OFF \
    -DCMAKE_BUILD_TYPE=Release \
    -DVTK_Group_Qt=ON \
    -DVTK_QT_VERSION=5 \
    -DVTK_Group_Rendering=ON \
    -DVTK_RENDERING_BACKEND=OpenGL2 \
    -DVTK_WRAP_JAVA=OFF \
    -DVTK_WRAP_PYTHON=OFF \
    -S vtk/ -B vtk-build/
# May take a while
make -C vtk-build/ -j$(($(nproc) - 1))

NOTE: We recommend using VTK v8.2.0

Once here, all the dependencies are ready, you can optionally install VTK globally by performing: sudo make install in the vtk-build folder

Build AtilaCalculatorSoftware

git clone https://github.com/Xisabla/AtilaCalculatorSoftware
cd AtilaCalculatorSoftware

If VKT is not installed globally, let's assume the path to vtk-build as /path/to/vtk-build/

cmake -S ./ -B ./build/ -DVTK_DIR:PATH=/path/to/vtk-build/ -Wno-dev
make -C build

Otherwise, if VTK is installed globally you can just perform:

cmake -S ./ -B ./build/ -Wno-dev
make -C build

Run AtilaCalculatorSoftware

You can now run the built executable file:

./build/AtilaCalculatorSoftware