f4exb / sdrangel

SDR Rx/Tx software for Airspy, Airspy HF+, BladeRF, HackRF, LimeSDR, PlutoSDR, RTL-SDR, SDRplay and FunCube
GNU General Public License v3.0
2.96k stars 447 forks source link

Upgrade Qt version for Ubuntu build #1416

Closed f4exb closed 2 years ago

f4exb commented 2 years ago

It is becoming an increasing pain to maintain Qt 5.12 compatibility because Ubuntu builds are based on 20.04. Possible solutions:

f4exb commented 2 years ago

Using Qt5.15 on the 20.04 image is a no-no the image does not seem to contain any Qt pre-installed software. As it runs on premises it appears to be a "minimal" Ubuntu image as mentioned in the image tag. However some other options could be investiagated:

Note: this is the docker ps display of a running build:

CONTAINER ID                                                       IMAGE                 COMMAND                                                 CREATED          STATUS                   PORTS     NAMES                                  
90f76d5b88c746f830aff2671f09189d50e1c7b6a70942a54ac00eee36b4a463   appveyor-byoc-linux   "/bin/bash /scripts/entrypoint.sh"                      11 minutes ago   Up 11 minutes                      admiring_poincare 
srcejon commented 2 years ago

CI is one consideration, but what might users want? If we require Qt 5.15, are there any major distros that don't have 5.15 on their most recent LTS equivalent release?

Quick look at the versions in the VMs I have:

Ubuntu 20.04 - 5.12.8 Ubuntu 21.10 - 5.15.2 Ubuntu 22.04 - 5.15.3 Debian 10 - 5.11 Debian 11 - 5.15.2 Centos 7 - 4 Centos 8 - 5.15.2 Fedora 36 - 5.15.3 Windows - 5.15.2 Mac - 5.15.2

So probably OK, unless we want to support older distros.

f4exb commented 2 years ago

Indeed 5.15 seems to be in every modern distribution. I think we should drop 5.12 compatibility anyway as it is holding the code too much back.

f4exb commented 2 years ago

Now the CI builds an Ubuntu 22.04 .deb

f4exb commented 2 years ago

Hack to create the Ubuntu 22.04 image used for builds: https://github.com/f4exb/appveyor-build-images/tree/ubuntu2204_hack Run the linuxbuild.sh script Missing is tagging of the image: docker tag <image id> appveyor/build-image:minimal-ubuntu-22.04 Then to make it the default image used by appveyor agent: docker tag <image id> appveyor-byoc-linux:latest

f4exb commented 2 years ago

Documentation updated