Version migration from 4.8.6 to 5.6.3
-
Hi,
I'm trying to update a large project from 4.8.6 to 5.6.3 and I encountered some problems with QtDeclarative. It's used a lot in the old version.After some digging I have few questions:
-
Is QtDeclarative available for 5.6.3 in the same form as it is on 4.8.6?
As far as I understand QtDeclarative was replaced by QtQuick and QtQml and I'm afraid that whole project would have to be remade using those modules. -
How to properly install QtDeclarative on Ubuntu 18.04.1?
I tried to manually install it by downloading source code from git and creating makefile and so on, but I couldn't do it (Project ERROR: Unknown module(s) in QT: declarative). -
Can I use QtDeclarative source code files from 4.8.6?
Because my project uses a lot of singular header files I'm thinking about inserting QtDeclarative files manually.
-
-
Hi,
I'm trying to update a large project from 4.8.6 to 5.6.3 and I encountered some problems with QtDeclarative. It's used a lot in the old version.After some digging I have few questions:
-
Is QtDeclarative available for 5.6.3 in the same form as it is on 4.8.6?
As far as I understand QtDeclarative was replaced by QtQuick and QtQml and I'm afraid that whole project would have to be remade using those modules. -
How to properly install QtDeclarative on Ubuntu 18.04.1?
I tried to manually install it by downloading source code from git and creating makefile and so on, but I couldn't do it (Project ERROR: Unknown module(s) in QT: declarative). -
Can I use QtDeclarative source code files from 4.8.6?
Because my project uses a lot of singular header files I'm thinking about inserting QtDeclarative files manually.
@Ricky9902
Have you seen this guide?In short, the modules have been renamed, and you'll need the modules quick, qml and possibly quickwidgets, qquickcontrols etc.
The guide lists classes that need to be renamed (e.g. QDeclarativeItem --> QQuickItem), so that should hopefully a rather simple rename operation.
Hope that helps you get started.
-
-
Thank you for your answer!
Yes, I have seen this guide. I just needed some confirmation that this is the case.Do you know what happened with QtWebkit?
I know that it was removed and it has to be manually installed, however I get this error three time in one file ../qtwebkit/Source/JavaScriptCore/API/JSStringRef.cpp when I try to make the makefile that qmake created:error: invalid conversion from ‘const UChar* {aka const char16_t*}’ to ‘const JSChar* {aka const short unsigned int*}’ [-fpermissive]
Is it caused by the fact that qmake is 5.6.3?
Would QtWebEngine be a proper replacement for QtWebKit?(I was following this thread for QtWebkit's installation)
-
Thank you for your answer!
Yes, I have seen this guide. I just needed some confirmation that this is the case.Do you know what happened with QtWebkit?
I know that it was removed and it has to be manually installed, however I get this error three time in one file ../qtwebkit/Source/JavaScriptCore/API/JSStringRef.cpp when I try to make the makefile that qmake created:error: invalid conversion from ‘const UChar* {aka const char16_t*}’ to ‘const JSChar* {aka const short unsigned int*}’ [-fpermissive]
Is it caused by the fact that qmake is 5.6.3?
Would QtWebEngine be a proper replacement for QtWebKit?(I was following this thread for QtWebkit's installation)
@Ricky9902
Yes, WebEngine is the proper replacement for WebKit (see porting guide)And you should port because WebKit will be full of security holes by now.
Talking of that...why 5.6.3 instead of a more up-to-date Qt version?