therecipe / qt

Qt binding for Go (Golang) with support for Windows / macOS / Linux / FreeBSD / Android / iOS / Sailfish OS / Raspberry Pi / AsteroidOS / Ubuntu Touch / JavaScript / WebAssembly
GNU Lesser General Public License v3.0
10.5k stars 748 forks source link

Error running qtsetup for webengine #945

Open muesli opened 5 years ago

muesli commented 5 years ago

Building with Qt 5.13.0 and latest therecipe/qt, I get this error for webengine:

github.com/therecipe/qt/webengine
# github.com/therecipe/qt/webengine
webengine.cpp: In function ‘void QWebEnginePage_ConnectSelectClientCertificate(void*)’:
webengine.cpp:2956:307: error: ‘Signal_SelectClientCertificate’ is not a member of ‘MyQWebEnginePage’
 2956 |  QObject::connect(static_cast<QWebEnginePage*>(ptr), static_cast<void (QWebEnginePage::*)(QWebEngineClientCertificateSelection)>(&QWebEnginePage::selectClientCertificate), static_cast<MyQWebEnginePage*>(ptr), static_cast<void (MyQWebEnginePage::*)(QWebEngineClientCertificateSelection)>(&MyQWebEnginePage::Signal_SelectClientCertificate));
      |                                                                                                                                                                                                                                                                                                                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
webengine.cpp: In function ‘void QWebEnginePage_DisconnectSelectClientCertificate(void*)’:
webengine.cpp:2961:310: error: ‘Signal_SelectClientCertificate’ is not a member of ‘MyQWebEnginePage’
 2961 |  QObject::disconnect(static_cast<QWebEnginePage*>(ptr), static_cast<void (QWebEnginePage::*)(QWebEngineClientCertificateSelection)>(&QWebEnginePage::selectClientCertificate), static_cast<MyQWebEnginePage*>(ptr), static_cast<void (MyQWebEnginePage::*)(QWebEngineClientCertificateSelection)>(&MyQWebEnginePage::Signal_SelectClientCertificate));
therecipe commented 5 years ago

Hey

I looked into this and the QWebEnginePage::selectClientCertificate function as well as a few other QWebEnginePage/View functions should be available again now with: https://github.com/therecipe/qt/commit/5aa0dd4260fbf0f3b21de1b368559003bc4f5c27#diff-ead44dc7bb6ee19220b907c481fd84fe

muesli commented 5 years ago

Pulled to latest master, but sadly still get the error (just the line numbers have shifted a bit):

# github.com/therecipe/qt/webengine
webengine.cpp: In function ‘void QWebEnginePage_ConnectSelectClientCertificate(void*)’:
webengine.cpp:2961:307: error: ‘Signal_SelectClientCertificate’ is not a member of ‘MyQWebEnginePage’
 2961 |  QObject::connect(static_cast<QWebEnginePage*>(ptr), static_cast<void (QWebEnginePage::*)(QWebEngineClientCertificateSelection)>(&QWebEnginePage::selectClientCertificate), static_cast<MyQWebEnginePage*>(ptr), static_cast<void (MyQWebEnginePage::*)(QWebEngineClientCertificateSelection)>(&MyQWebEnginePage::Signal_SelectClientCertificate));
      |                                                                                                                                                                                                                                                                                                                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
webengine.cpp: In function ‘void QWebEnginePage_DisconnectSelectClientCertificate(void*)’:
webengine.cpp:2966:310: error: ‘Signal_SelectClientCertificate’ is not a member of ‘MyQWebEnginePage’
 2966 |  QObject::disconnect(static_cast<QWebEnginePage*>(ptr), static_cast<void (QWebEnginePage::*)(QWebEngineClientCertificateSelection)>(&QWebEnginePage::selectClientCertificate), static_cast<MyQWebEnginePage*>(ptr), static_cast<void (MyQWebEnginePage::*)(QWebEngineClientCertificateSelection)>(&MyQWebEnginePage::Signal_SelectClientCertificate));
therecipe commented 5 years ago

Sorry for the delay. Which Qt version do you use? (Fasttrack, Official, PkgConfig ?)

muesli commented 5 years ago

5.13 packages from ArchLinux with pkg-config.

therecipe commented 5 years ago

I looked into this, and it happened because the Qt *.index files from pacman are slightly wrong. But https://github.com/therecipe/qt/commit/33ee7b247daa9ea9e4d87af0878c1939b4f59eda#diff-ed48c47c1c28a43f8dc117828d9af84f should work around this now.

Btw, for rolling release distro such as Arch or openSUSE Tumbleweed, I would generally recommend the use of QT_API=5.13.0