Prerequisite Check list
Prerequisite Check list
Section titled “Prerequisite Check list”If you want to self host you need to be able to meet these conditions on your host in order to use the script.
🟩 Supported host build platforms
- Debian:
trixie
- Ubuntu:
noble
- Alpine:
3.18
or greater
🟩 Build environment
Docker via a shell likeBash orPowershell Docker Desktop :Windows
MacOS
WSL2
- WSL2
- Run directly in the Debian or Ubuntu image ❌ (works but not recommended)
- Via
Docker Desktop ✅ (recommended method) - Docker installed in
WSL2 image ✅ (alternative recommendation)
🟩 Bash Shell script
- This is 100% a modern bash shell script and it requires having access to bash to run it.
🟧 Host permissions
- The script needs to install some system dependencies in order to proceed and if you do not have permission or access to do this or no access to docker to use a container you must find a more suitable host environment.
- You can simply fork the repo on Github and create your own releases if you have no access to a suitable build host
🟥 Emulation requirements for cross building
icu
qtbase
andqttools
requiresqemu
emulation to be available by default in order to cross build them.- This was reworked in script version
v2.2.2
and now the user has more choice of how to build. - Two env vars specific to dealing with this were introduced
qbt_with_qemu
- this defaults toyes
but if set tono
if will enable_host_deps
version of the modules that need a host version to be build before they can cross build.- this means longer build times as these modules are essentially built twice.
qbt_host_deps
- defaults tono
but if set to yes it will not build locally but instead pull in prebuilt host deps for the these modules avoiding the need to build them locally.- They are built and sourced from here https://github.com/userdocs/qbt-host-deps
- This make build time equivalent to using
qemu
without the requirement of havingqemu
If you build using Qt6 you will need to have these dependencies installed on the host (not inside the docker),
sudo apt install qemu-user-static binfmt-support
sudo apk add qemu qemu-openrc