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

Qt 6 Support #1280

Open
jheaff1 opened this issue Jul 6, 2022 · 9 comments
Open

Qt 6 Support #1280

jheaff1 opened this issue Jul 6, 2022 · 9 comments
Labels
feature For issues and pull request that request or implement a new feature help wanted Signal that help of other is appreciated question For issues of type 'question' renderer For issues in the content of the rendering engine

Comments

@jheaff1
Copy link
Contributor

jheaff1 commented Jul 6, 2022

Hi,

Are there any plans to add support for Qt 6?

@Karry
Copy link
Collaborator

Karry commented Jul 6, 2022

Well, I do not plan to write support for Qt 6 now. Because I am targeting to Sailfish OS that stuck with prehistoric Qt 5.6 :-( But I understand that it is impossible to keep compatibility with 5.6 forever... What platform you are targeting?

@jheaff1
Copy link
Contributor Author

jheaff1 commented Jul 6, 2022

Hi @Karry,

Many thanks for your quick reply. Wow, I didn’t realise there are platforms that are stuck on such old Qt versions!

I’m currently using libosmscout on Windows, Linux and Android. It works brilliantly, by the way!

@Framstag
Copy link
Owner

Framstag commented Jul 7, 2022

For me the following question would be even more interesting:

  • How big are the differences?
  • What happens, if we just build with Qt6 (and possibly make some schematic changes)? How many errors will we get?
  • How do we handle the migration? Do we make a copy of the existing libraries? Can we have some code branches (because the differences are small)? Howe do we make sure, that we do not have to fix and enhance things twice?

If you are interested in Qt6 support, this might help us starting to get a feeling how big the change would be?

@Framstag Framstag added feature For issues and pull request that request or implement a new feature question For issues of type 'question' renderer For issues in the content of the rendering engine help wanted Signal that help of other is appreciated labels Jul 7, 2022
@vyskocil
Copy link
Collaborator

vyskocil commented Jul 7, 2022

If I remember well there was a licence change with Qt6 and there are no more “free” licence for Open Source project, I’m wrong ?

@jheaff1
Copy link
Contributor Author

jheaff1 commented Jul 7, 2022

Qt did change their licensing but I’m pretty sure that the free option hasn’t changed, I.e most of it is LGPL and some modules, eg QtCharts is GPL

@Framstag
Copy link
Owner

See merged request above. I was now able to create a QT6 based build under Arch Linux using meson using the following command line:

PATH=/usr/lib/qt6:/usr/lib/qt6/bin:$PATH meson setup -D qtVersion=6 debug

I did the changes in the given way, since it was the easiest way, to see, how much was changed and how big the effort is, to get the code running under Qt5 and Qt6. With further findings the build configuration might have to get adapted.

To get continuous stable support for Qt5 and Qt6 one likely has to add another CI build against Qt6 dependencies.

The build currently fails because has been removed from Qt6. See https://doc.qt.io/qt-6/qtmultimedia-changes-qt6.html

@Framstag
Copy link
Owner

I have now added a QT6 based build, see #1300. The build currently is broken, due to Qt6 support not being complete yet.

@Framstag
Copy link
Owner

@Karry did add further fixes with #1318, but still more work to do.

@Karry
Copy link
Collaborator

Karry commented Dec 14, 2022

Another round of fixes: #1361

Build is green. But it is not tested and playing navigation voice instructions is not ported yet... See NavigationModule and InstalledVoicesModel

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature For issues and pull request that request or implement a new feature help wanted Signal that help of other is appreciated question For issues of type 'question' renderer For issues in the content of the rendering engine
Projects
None yet
Development

No branches or pull requests

4 participants