Qt is a cute framework for creating graphical user interfaces (GUIs).

Using the provided project template, getting started with Qt development is easy.



C++ build tools


Install build tools using apt:
apt install build-essential


Download and install Visual Studio Build Tools.
The whole Visual Studio (IDE) is not needed. The build tools are sufficient.

Python & Conan


Install Python using apt:
apt install python3

Install Conan using pip:
pip3 install conan


Download and install Python:

Install Conan using pip:
pip install conan

Qt Creator (IDE)


Install Qt Creator using apt:
apt install qtcreator


Download and install Qt Creator:
You do not need to register during installation if you enter a proxy that does not work.

Building a Conan package of Qt

Download the package recipe for Qt to a folder named "qt":
mkdir qt
curl https://gernot-walzl.at/C++/Qt/conanfile.py -o qt/conanfile.py

Create the package by specifying the directory with the recipe:
conan create qt

Building Qt may take an hour.

Building the example / project template

Download the project template and extract it:
curl https://gernot-walzl.at/C++/Qt/HelloQt-0.1.0.tar.gz -o HelloQt-0.1.0.tar.gz
tar xvf HelloQt-0.1.0.tar.gz
cd HelloQt

Build the project:
mkdir build
cd build
conan install -g virtualrunenv ..
conan build ..

Executing the binary

The built executable is linked against shared libraries. Launching the executable,
requires these shared libraries to be found. By activating the virtual environment,
environment variables (e.g. PATH) are set so that the correct libraries are found.

Activate the environment:
cd build
source activate_run.sh or activate_run.bat

If the environment has been activated, (conanrunenv) is shown at the command prompt.

Execute the binary:
./bin/HelloQt or bin\Release\HelloQt.exe

Using Qt Creator for development

Activate the environment:
cd build
source activate_run.sh or activate_run.bat

Launch Qt Creator:

The environment (conanrunenv) enables Qt Creator to automatically detect
settings used for building and running the project.

Creating a portable zip of the executable

Export the package:
cd build
conan export-pkg ..

Because of the scm attribute in the package recipe conanfile.py,
the package can only be exported if the source code is part of a git repository.

Install the binary package in a folder called "dist":
mkdir dist
cd dist
conan install HelloQt/0.1.0@_/_

By calling conan install, the deploy method of the package recipe conanfile.py
copies the executable and all required shared libraries.

Create a zip of the folder containing the binaries:
zip -r HelloQt-0.1.0.zip HelloQt