Open kraxarn opened 4 years ago
Hey
I haven't had time to fully test it yet, but https://github.com/therecipe/qt/commit/aa8a227277068956735ce5c02f461195a949ab7c should make Qt 5.14 work for now. The setup might fail at the test step though, because I haven't replaced the deprecated functions yet. Also some other things like android deployments might be broken as well.
I still get the same error message when using QT_API=5.14.0
.
Ah yes, sorry.
QT_API=5.14.0
isn't supported as well, but if you installed Qt 5.14 and then just export QT_VERSION=5.14.0
and unset QT_API
.
I will make QT_API=5.14.0
work, when I bump the default Qt version to 5.14
From my quick testing, using QT_API=5.13.0
together with QT_VERSION=5.14.0
seemed to work fine before as well, but maybe I just didn't test enough.
Sorry, what I meant to say was, explicitly setting QT_API=5.14.0
isn't supported atm, but using the 5.14 api by just setting QT_VERSION=5.14.0
should work now. (QT_API
needs to be unset for this to work)
QT_API
is usually only meant to provide backward/forward compatible code, and if you don't set it explicitly then qtdeploy/qtsetup will use the api version that is found in your QT_DIR
automatically.
I now got Qt 5.14 in my official repositories and decided to try this again. It seemed to work fine, but the webengine module fails to install. Some warnings are also generated. I'm unsure if they are related, as I didn't see them in 5.13, so I'm including them as well. Here are the error messages I receive:
INFO[0754] installing full qt/webengine
# github.com/therecipe/qt/internal/binding/runtime
moc.cpp: In function ‘int helper0dce95_helper0dce95_QmlRegisterType()’:
moc.cpp:72:39: warning: ‘int qmlRegisterType() [with T = helper0dce95]’ is deprecated: Use qmlRegisterAnonymousType instead [-Wdeprecated-declarations]
72 | return qmlRegisterType<helper0dce95>();
| ^
In file included from /usr/include/qt/QtQml/qqmlengine.h:47,
from /usr/include/qt/QtQml/QQmlEngine:1,
from moc.cpp:20:
/usr/include/qt/QtQml/qqml.h:138:74: note: declared here
138 | QT_DEPRECATED_VERSION_X_5_14("Use qmlRegisterAnonymousType instead") int qmlRegisterType()
| ^~~~~~~~~~~~~~~
moc.cpp:72:39: warning: ‘int qmlRegisterType() [with T = helper0dce95]’ is deprecated: Use qmlRegisterAnonymousType instead [-Wdeprecated-declarations]
72 | return qmlRegisterType<helper0dce95>();
| ^
In file included from /usr/include/qt/QtQml/qqmlengine.h:47,
from /usr/include/qt/QtQml/QQmlEngine:1,
from moc.cpp:20:
/usr/include/qt/QtQml/qqml.h:138:74: note: declared here
138 | QT_DEPRECATED_VERSION_X_5_14("Use qmlRegisterAnonymousType instead") int qmlRegisterType()
| ^~~~~~~~~~~~~~~
github.com/therecipe/qt/printsupport
github.com/therecipe/qt/webengine
# github.com/therecipe/qt/webengine
webengine.cpp: In member function ‘void MyQWebEnginePage::Signal_LifecycleStateChanged(QWebEnginePage::LifecycleState)’:
webengine.cpp:2350:127: error: cannot convert ‘QWebEnginePage::LifecycleState’ to ‘long long int’
2350 | void Signal_LifecycleStateChanged(QWebEnginePage::LifecycleState state) { callbackQWebEnginePage_LifecycleStateChanged(this, state); };
| ^~~~~
| |
| QWebEnginePage::LifecycleState
In file included from webengine.cpp:7:
cgo-gcc-export-header-prolog:260:82: note: initializing argument 2 of ‘void callbackQWebEnginePage_LifecycleStateChanged(void*, long long int)’
webengine.cpp: In member function ‘void MyQWebEnginePage::Signal_RecommendedStateChanged(QWebEnginePage::LifecycleState)’:
webengine.cpp:2360:131: error: cannot convert ‘QWebEnginePage::LifecycleState’ to ‘long long int’
2360 | void Signal_RecommendedStateChanged(QWebEnginePage::LifecycleState state) { callbackQWebEnginePage_RecommendedStateChanged(this, state); };
| ^~~~~
| |
| QWebEnginePage::LifecycleState
In file included from webengine.cpp:7:
cgo-gcc-export-header-prolog:280:84: note: initializing argument 2 of ‘void callbackQWebEnginePage_RecommendedStateChanged(void*, long long int)’
webengine.cpp: In function ‘long long int QWebEnginePage_LifecycleState(void*)’:
webengine.cpp:2761:58: error: cannot convert ‘QWebEnginePage::LifecycleState’ to ‘long long int’ in return
2761 | return static_cast<QWebEnginePage*>(ptr)->lifecycleState();
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
| |
| QWebEnginePage::LifecycleState
webengine.cpp: In function ‘long long int QWebEnginePage_RecommendedState(void*)’:
webengine.cpp:2937:60: error: cannot convert ‘QWebEnginePage::LifecycleState’ to ‘long long int’ in return
2937 | return static_cast<QWebEnginePage*>(ptr)->recommendedState();
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~
| |
| QWebEnginePage::LifecycleState
Qt 5.14 was released a couple of days ago, and even though it hasn't made its way to any major Linux distribution yet, I thought I would try it out. Unfortunately, when using
export QT_API=5.14.0
, the setup check fails with the following error:However, using
export QT_API=5.13.0
andexport QT_VERSION=5.14.0
seems to work fine, but I assume none of the new APIs from Qt 5.14 will be available.