Use a newer toolchain to build Linux binaries

Qt 6.7.2 fails to build with gcc 9/glibc 2.31
This commit is contained in:
Kovid Goyal 2024-08-05 10:32:16 +05:30
parent 5ec3263da2
commit 641386dca1
No known key found for this signature in database
GPG Key ID: 06BC317B515ACE7C
3 changed files with 14 additions and 11 deletions

View File

@ -1,4 +1,4 @@
image 'https://cloud-images.ubuntu.com/releases/focal/release/ubuntu-20.04-server-cloudimg-{}.img' image 'https://cloud-images.ubuntu.com/releases/jammy/release/ubuntu-22.04-server-cloudimg-{}.img'
# Build time deps for Qt. See https://doc.qt.io/qt-6/linux-requirements.html and # Build time deps for Qt. See https://doc.qt.io/qt-6/linux-requirements.html and
# https://doc.qt.io/qt-6/qtwebengine-platform-notes.html # https://doc.qt.io/qt-6/qtwebengine-platform-notes.html

View File

@ -806,11 +806,12 @@ def main(install_dir=None, isolated=False, bin_dir=None, share_dir=None, ignore_
' available for 64-bit systems. You will have to compile from' ' available for 64-bit systems. You will have to compile from'
' source.') ' source.')
glibc_versions = { glibc_versions = {
(6, 0, 0) : {'min_required': (2, 31), 'release_date': '2020-02-01'} (6, 0, 0) : {'min_required': (2, 31), 'release_date': '2020-02-01'},
(7, 17, 0) : {'min_required': (2, 35), 'release_date': '2022-02-03'}
} }
if is_linux_arm64: if is_linux_arm64:
glibc_versions.update({ glibc_versions.update({
(6, 8, 0) : {'min_required': (2, 34), 'release_date': '2022-02-03'} (6, 8, 0) : {'min_required': (2, 34), 'release_date': '2021-08-02'}
}) })
q = tuple(map(int, version.split('.'))) if version else (sys.maxsize, 999, 999) q = tuple(map(int, version.split('.'))) if version else (sys.maxsize, 999, 999)
for key in sorted(glibc_versions, reverse=True): for key in sorted(glibc_versions, reverse=True):

View File

@ -86,17 +86,18 @@ if machine.startswith('arm') or machine.startswith('aarch64'):
if py3: if py3:
unicode = str unicode = str
raw_input = input raw_input = input
from urllib.parse import urlparse
from urllib.request import BaseHandler, build_opener, Request, urlopen, getproxies, addinfourl
import http.client as httplib import http.client as httplib
from urllib.parse import urlparse
from urllib.request import BaseHandler, Request, addinfourl, build_opener, getproxies, urlopen
def encode_for_subprocess(x): def encode_for_subprocess(x):
return x return x
else: else:
from future_builtins import map from urllib import addinfourl, getproxies, urlopen
from urlparse import urlparse
from urllib import urlopen, getproxies, addinfourl
from urllib2 import BaseHandler, build_opener, Request
import httplib import httplib
from future_builtins import map
from urllib2 import BaseHandler, Request, build_opener
from urlparse import urlparse
def encode_for_subprocess(x): def encode_for_subprocess(x):
if isinstance(x, unicode): if isinstance(x, unicode):
@ -854,11 +855,12 @@ def main(install_dir=None, isolated=False, bin_dir=None, share_dir=None, ignore_
' available for 64-bit systems. You will have to compile from' ' available for 64-bit systems. You will have to compile from'
' source.') ' source.')
glibc_versions = { glibc_versions = {
(6, 0, 0) : {'min_required': (2, 31), 'release_date': '2020-02-01'} (6, 0, 0) : {'min_required': (2, 31), 'release_date': '2020-02-01'},
(7, 17, 0) : {'min_required': (2, 35), 'release_date': '2022-02-03'}
} }
if is_linux_arm64: if is_linux_arm64:
glibc_versions.update({ glibc_versions.update({
(6, 8, 0) : {'min_required': (2, 34), 'release_date': '2022-02-03'} (6, 8, 0) : {'min_required': (2, 34), 'release_date': '2021-08-02'}
}) })
q = tuple(map(int, version.split('.'))) if version else (sys.maxsize, 999, 999) q = tuple(map(int, version.split('.'))) if version else (sys.maxsize, 999, 999)
for key in sorted(glibc_versions, reverse=True): for key in sorted(glibc_versions, reverse=True):