Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update minimum platforms for 1.15.0 to update Qt #3461

Open
alamshafil opened this issue Mar 1, 2024 · 2 comments
Open

Update minimum platforms for 1.15.0 to update Qt #3461

alamshafil opened this issue Mar 1, 2024 · 2 comments

Comments

@alamshafil
Copy link
Contributor

I wanted to open this issue to discuss if should update minimum platform versions (Windows, macOS, Linux), which is a breaking change, to help update the Qt dependency.

According the the Qt website, Qt 5.15.x supports macOS >= 10.13 and Windows >= 7.
Qt 6.6 supports macOS >= 11 and Windows 10 (1809) or higher.

Updating the Qt dependency also requires new dependencies.

  • Dependencies update:

    • libxcb 1.10 -> 1.14 (min for Qt 5.15.x is 1.11)
    • xcb_proto 1.10 -> 1.14.1
    • OpenSSL 1.0.2u -> 1.1.1w (latest) (min for Qt 5.15.x is 1.1.1)
  • New Dependencies

    • libxcb_* 0.4.0 (needed for Linux Qt 5.15.x)

The Qt dependency update would cause the change in minimum platform support. While OpenSSL should support glibc 2.11, from the last time I attempted to update the Qt version I noticed symbol check failed on getauxval and getentropy.

It also might be helpful to do these dependencies updates, but I am not sure how it will effect the current Qt version.

@patricklodder
Copy link
Member

  • Qt 5.15 has some form of extended-LTS for a year and then we're on our own. I don't think it makes sense to port that in.
  • OpenSSL is not needed for Qt anymore if we deprecate BIP70 fully, which imho we should, unless we get a million complaints from 1.14.7 users.

The other dependency updates we can deal with, but let's focus on Qt6.

The first step to get that in is to get rid of Qt4 conditionals.

@patricklodder
Copy link
Member

patricklodder commented Mar 2, 2024

I've been studying the Qt (LTS only, because non-LTS only has 1 year support) requirements a bit from the site @alamshafil mentioned above.

Version End of Support GCC Windows macOS
5.15 2023-05-26 9 7-11 10.13-12
6.2 2024-09-30 9 10-11 10.14-12
6.5 2026-03-30 11 10-11 11-13

So basically we can get:

  • 6 months of 6.2 with not too much rework effort because it supports gcc-9, or
  • 2 years of 6.5 with a tad more effort because it needs gcc-11

I don't think 5.15 is worth it for -10 months of support. After doing mad patching on pinned Qt source code, I'm convinced that 6.5 is the best option, because that means we don't have to worry about mad patching for 2 years. However, we'd need to check if we can get this to work for linux with glibc 2.31 as a base (current version for focal/bookworm - under RH 9.2, which iirc has 2.34)

I could - on top of #3466 and #3465 - investigate what is needed to just allow qt6 as a self-compile dependency for now. This would mean that we'd first make it work separate from depends, and only then start to mess around trying to make it all build deterministically.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants