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.18or greater
🟩 Build environment
Docker via a shell likeBash orPowershell Docker Desktop :WindowsMacOSWSL2- 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
icuqtbaseandqttoolsrequiresqemuemulation to be available by default in order to cross build them.- This was reworked in script version
v2.2.2and 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 toyesbut if set tonoif will enable_host_depsversion 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 tonobut 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
qemuwithout 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-supportsudo apk add qemu qemu-openrc