Open MatthewCroughan opened 1 year ago
The reason is because QStringRef
is removed in Qt6, so you'll need to port this to use QStringView instead. You could use Qt5Compat, but Is there a valid reason to cling to Qt5 support since Qt5 is now deprecated? Let's get rid of Qt5 altogether in the Makefile and make Qt6 default.
I can confirm that simply renaming QStringRef
to QStringView
in the following files works:
./app/node/project/serializer/serializer.h
./app/node/project/serializer/serializer.cpp
./app/node/project/serializer/serializer230220.cpp
I believe this will break QT5 builds, not entirely sure. I won't make a patch for this since the choice is yours as to whether to get rid of QT5 and replace with QT6.
Is there a valid reason to cling to Qt5 support since Qt5 is now deprecated?
There are still some unresolved UI issues that get introduced when compiling with Qt 6. From memory, it's mostly mouse related issues pertaining to the sliders, though I can't remember fully and haven't really tested since first adding Qt 6 support. There's also an argument that there are still OSes in use that Olive officially supports and that Qt 6 doesn't, however this is obviously becoming less the case over time.
I've been using the latest commit on Wayland QT6 for more than 24 hours now, it's rock solid and I'm blown away by olive in general. It is state of the art.
The mouse/cursor does not change its appearance on various parts of the UI such as when enlarging clips, but I really do not mind that at all, if that's the bug you're referring to.
The current target is CY2022, but CY2023 is also Qt 5. It will be Qt 6 for CY2024: http://vfxplatform.com/
I can confirm that simply renaming
QStringRef
toQStringView
in the following files works:
if the changes are as simple as this, it probably warrants just using #ifdef
to keep support for both. it should be clean enough to remove if/when the decision to deprecate QT5 is made
I agree that this should be solved with ifdefs.
There have been several commits upgrading QT6 support, is the issue still relevant?
Commit Hash
066a10e6
Platform
Linux
Summary
Whilst creating a reproducible Nix derivation for olive-editor. I was building for QT6 and found via a bisect that 066a10e6 causes builds with QT6 to fail like this
Additional Information / Output
Every commit after 06a10e6 builds successfully with QT5.
The reason I am creating this derivation is to update the very out of date Nix package