QtWebEngine BaseApp
Please visit the wiki for more details and examples.
Please visit the wiki for more details and examples.
Instead of having to maintain multiple README.md
files in different branch, I suggest using the wiki.
Someone else will have to make the changes, as I'm not a collaborator here.
Here's a patch against the usual initial Home.md
.
From 3b1f3c7a63f238f92712337997e5654658424c3b Mon Sep 17 00:00:00 2001
From: tinywrkb <[email protected]>
Date: Fri, 24 Jun 2022 23:15:38 +0300
Subject: [PATCH] Add initial documentation
---
commit 88cf2d602d65c8ba18c9494576cd0248cbd726c4
Author: tinywrkb <[email protected]>
Date: Fri Jun 24 23:15:38 2022 +0300
Add initial documentation
diff --git a/Home.md b/Home.md
index 92a444f..bd31149 100644
--- a/Home.md
+++ b/Home.md
@@ -1 +1,79 @@
-Welcome to the io.qt.qtwebengine.BaseApp wiki!
+# QtWebEngine BaseApp
+
+This base application provides Qt's WebEngine module, which is missing from the KDE runtime, and makes it possible to
+quickly and easily package applications that depend on this module.
+
+If you just found this base application, then you might also be interested in the [PyQt base application](https://github.com/flathub/com.riverbankcomputing.PyQt.BaseApp).
+
+
+## Features
+
+### Included libraries
+
+* QtWebEngine
+* QtWebView
+* krb5: Just the minimal needed for Kerberos authentication with Chromium
+* libevent
+* minizip
+* pciutils: libpci without utilities
+* re2
+* snappy
+
+### Dictionaries
+
+QtWebEngine dictionaries are built from the Hunspell dictionaries and included in this base application.
+When building a Flatpak application with this base application, these dictionaries will be packaged in the generated locale extensions,
+will not be bundled with the application itself, and that's as long as the maintainer didn't disable locale extensions by setting the
+`separate-locales` property.
+
+Applications are expected to set the environment variable `QTWEBENGINE_DICTIONARIES_PATH` to `/app/qtwebengine_dictionaries`.
+
+### Sandboxing support (Qt6 only)
+
+Support for spawning sandboxed Flatpak instances is included, and will be used by QtWebEngine to sandbox Chromium's
+render processes.
+
+This feature requires a D-Bus session bus socket in the Flatpak sandbox, but it doesn't need unfiltered access to the session
+bus, and will work fine without any extra [xdg-dbus-proxy](https://github.com/flatpak/xdg-dbus-proxy) permissions.
+
+Important to note that without a working session bus socket, QtWebEngine process will fail to start.
+
+During packaging of a Flatpak application there is no session bus socket in the sandbox, so if the build process
+needs running QtWebEngine, then it will fail.
+The workaround is to disable sandboxing like this:
+
+```
+build-options:
+ env:
+ QTWEBENGINE_DISABLE_SANDBOX: '1'
+ # Or alternatively
+ QTWEBENGINE_CHROMIUM_FLAGS: --no-sandbox
+```
+
+Flatpak sandboxing support for Chromium was developed by [Ryan Gonzalez](https://refi64.com/) for the [Chromium Flatpak application](https://github.com/flathub/org.chromium.Chromium).
+
+
+## Example QtWebEngine Application
+
+```
+app-id: org.kde.QtWebEngine.SampleApplication
+runtime: org.kde.Platform
+runtime-version: '6.3'
+sdk: org.kde.Sdk
+base: io.qt.qtwebengine.BaseApp
+base-version: '6.3'
+command: qtwebengine-sample-application
+finish-args:
+ - --device=dri
+ - --env=QTWEBENGINEPROCESS_PATH=/app/bin/QtWebEngineProcess
+ - --share=ipc
+ - --share=network
+ - --socket=fallback-x11
+ - --socket=pulse
+ - --socket=wayland
+cleanup-commands:
+ - /app/cleanup-BaseApp.sh
+modules:
+ - name: sample-application
+ ...
+```
I also have these changes in my fork. Clone it and copy Home.md
, or add it as a git remote.
I'm working on the 22.08 Runtime update for KDE. Can I be granted access to this repo?
Thanks!
Would be nice, to have this BaseApp available for the 6.4 runtime
I'm using version 5.15. Here's the error I get:
[📦 io.qt.qtwebengine.BaseApp ~]$ QtWebEngineProcess
QWebEngine: OpenGL resource sharing is not set up in QtQuick. Please make sure to call QtWebEngine::initialize() in your main() function.
QWebEngine: OpenGL resource sharing is not set up in QtQuick. Please make sure to call QtWebEngine::initialize() in your main() function.
QWebEngine: OpenGL resource sharing is not set up in QtQuick. Please make sure to call QtWebEngine::initialize() in your main() function.
QWebEngine: OpenGL resource sharing is not set up in QtQuick. Please make sure to call QtWebEngine::initialize() in your main() function.
QWebEngine: OpenGL resource sharing is not set up in QtQuick. Please make sure to call QtWebEngine::initialize() in your main() function.
QWebEngine: OpenGL resource sharing is not set up in QtQuick. Please make sure to call QtWebEngine::initialize() in your main() function.
[31:37:1222/224428.934317:FATAL:gpu_data_manager_impl_private.cc(439)] GPU process isn't usable. Goodbye.
Trace/breakpoint trap (core dumped)
For the records, here's the original issue in the app I'm maintaining. I thought the error depended on me, then someone made me realize that QtWebEngineProcess is part of this app.
Let me know if you need more info to debug it.
By default ld.so will not find libQt5WebEngine.so.
Does the Qt 5.12.2 in the runtime really forces us to stick with the outdated QtWebEngine 5.15.2 version that has multiple CVEs? or can we keep up with the latest release tagged from the 5.15 branch?
We have org.qutebrowser.qutebrowser in Flathub that uses this baseapp, and I bet users will appreciate not using a browser with multiple security vulnerabilities.
Thank you for this extremely helpful package!
I would like to suggest including the QtWebView module in addition to QtWebEngine. As it stands now, the package does include QtWebEngine, which is arguably the more difficult of the two builds, but does not include the header files required to build the much simpler QtWebView and its plugin for QtWebEngine.
I maintain an app that uses QtWebView and would be grateful for any ready-made package that I could use.
And again: thank you for providing the package!
I give up, hence this issue.
This is what I have currently:
- name: pyqt5-webengine
build-options:
env:
- QMAKEPATH=/app/lib
config-opts:
- --concatenate
- --no-dist-info
- --no-docstrings
- --no-qsci-api
- --no-sip-files
- --no-stubs
- --verbose
- QMAKE_CFLAGS_RELEASE='-I/usr/include/python3.7m/'
- QMAKE_CXXFLAGS_RELEASE='-I/usr/include/python3.7m/'
- QMAKE_INCDIR+=/app/include/QtWebEngine
- QMAKE_INCDIR+=/app/include/QtWebEngineCore
- QMAKE_INCDIR+=/app/include/QtWebEngineWidgets
sources:
- type: archive
url: https://www.riverbankcomputing.com/static/Downloads/PyQtWebEngine/5.13.2/PyQtWebEngine-5.13.2.tar.gz
sha256: 4264911b5847c75721d8c9c30af92e58a216bd25ceef37f7abf921005c1d45a9
- type: script
commands:
- processed=`sed -e 's|prefix|sysroot|' <<< $@`
- python3 configure.py $processed
dest-filename: configure
This is the closest I have got to compilation.
At first it simply failed with a Project ERROR: Unknown module(s) in QT: webengine
. Modifying the QMAKEPATH
fixed that, but already that is trail-and-error and I have no idea if that’s the correct solution.
Next it complained about being unable to find the include files for webengine, as it was looking for them in /usr
. Adding the respective QMAKE_INCDIR+=
works around that.
Now it fails with:
[...]
cd QtWebEngine/ && ( test -e Makefile || /usr/bin/qmake -o Makefile /run/build/pyqt5-webengine/QtWebEngine/QtWebEngine.pro ) && make -f Makefile
make[1]: Entering directory '/run/build/pyqt5-webengine/QtWebEngine'
g++ -c -pipe -fno-exceptions -I/usr/include/python3.7m/ -Wall -W -D_REENTRANT -fPIC -DSIP_PROTECTED_IS_PUBLIC -Dprotected=public -DQT_NO_DEBUG -DQT_PLUGIN -DQT_WEBENGINE_LIB -DQT_WEBENGINECORE_LIB -DQT_QUICK_LIB -DQT_GUI_LIB -DQT_WEBCHANNEL_LIB -DQT_QML_LIB -DQT_NETWORK_LIB -DQT_POSITIONING_LIB -DQT_CORE_LIB -I. -isystem /app/include/python3.7m -isystem /usr/include/QtWebEngine -isystem /usr/include/QtWebEngineCore -isystem /usr/include/QtQuick -isystem /usr/include/QtGui -isystem /usr/include/QtWebChannel -isystem /usr/include/QtQml -isystem /usr/include/QtNetwork -isystem /usr/include/QtPositioning -isystem /usr/include/QtCore -I. -isystem /app/include/QtWebEngine -isystem /app/include/QtWebEngineCore -isystem /app/include/QtWebEngineWidgets -I/usr/lib/mkspecs/linux-g++ -o sipQtWebEnginepart0.o sipQtWebEnginepart0.cpp
rm -f libQtWebEngine.so
g++ -Wl,--version-script=QtWebEngine.exp -Wl,-O1 -Wl,-rpath-link,/usr/lib/x86_64-linux-gnu -shared -o libQtWebEngine.so sipQtWebEnginepart0.o /usr/lib/x86_64-linux-gnu/libQt5WebEngine.so /usr/lib/x86_64-linux-gnu/libQt5WebEngineCore.so /usr/lib/x86_64-linux-gnu/libQt5Quick.so /usr/lib/x86_64-linux-gnu/libQt5Gui.so /usr/lib/x86_64-linux-gnu/libQt5WebChannel.so /usr/lib/x86_64-linux-gnu/libQt5Qml.so /usr/lib/x86_64-linux-gnu/libQt5Network.so /usr/lib/x86_64-linux-gnu/libQt5Positioning.so /usr/lib/x86_64-linux-gnu/libQt5Core.so /usr/lib/x86_64-linux-gnu/libGL.so -lpthread
g++: error: /usr/lib/x86_64-linux-gnu/libQt5WebEngine.so: No such file or directory
g++: error: /usr/lib/x86_64-linux-gnu/libQt5WebEngineCore.so: No such file or directory
make[1]: *** [Makefile:310: libQtWebEngine.so] Error 1
make[1]: Leaving directory '/run/build/pyqt5-webengine/QtWebEngine'
make: *** [Makefile:49: sub-QtWebEngine-make_first-ordered] Error 2
If I’m reading this correctly (and I am completely out of my league anyway), QMake still thinks WebEngine is installed in /usr
, as -DQT_WEBENGINE_LIB
expands into /usr/lib/x86_64-linux-gnu/libQt5WebEngine.so
. I have no idea how to work around this.
…please help.
Hi there,
I am a downstream application developer that uses this base image.
Unfortunately, we are having issues building our application with 5.15-22.08
branch. The build log is as follows:
/usr/lib/gcc/x86_64-unknown-linux-gnu/12.1.0/../../../../x86_64-unknown-linux-gnu/bin/ld: /app/lib/x86_64-linux-gnu/libQt5WebEngineCore.so.5.15.10: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::rfind(char, unsigned long) const@GLIBCXX_3.4.21'
/usr/lib/gcc/x86_64-unknown-linux-gnu/12.1.0/../../../../x86_64-unknown-linux-gnu/bin/ld: /app/lib/x86_64-linux-gnu/libQt5WebEngineCore.so.5.15.10: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::find(char const*, unsigned long) const@GLIBCXX_3.4.21'
/usr/lib/gcc/x86_64-unknown-linux-gnu/12.1.0/../../../../x86_64-unknown-linux-gnu/bin/ld: /app/lib/x86_64-linux-gnu/libQt5WebEngineCore.so.5.15.10: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::find(char, unsigned long) const@GLIBCXX_3.4.21'
/usr/lib/gcc/x86_64-unknown-linux-gnu/12.1.0/../../../../x86_64-unknown-linux-gnu/bin/ld: /app/lib/x86_64-linux-gnu/libQt5WebEngineCore.so.5.15.10: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::compare(unsigned long, unsigned long, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) const@GLIBCXX_3.4.21'
/usr/lib/gcc/x86_64-unknown-linux-gnu/12.1.0/../../../../x86_64-unknown-linux-gnu/bin/ld: /app/lib/x86_64-linux-gnu/libQt5WebEngineCore.so.5.15.10: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::find_last_not_of(char const*, unsigned long, unsigned long) const@GLIBCXX_3.4.21'
/usr/lib/gcc/x86_64-unknown-linux-gnu/12.1.0/../../../../x86_64-unknown-linux-gnu/bin/ld: /app/lib/x86_64-linux-gnu/libQt5WebEngineCore.so.5.15.10: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::find(char const*, unsigned long, unsigned long) const@GLIBCXX_3.4.21'
/usr/lib/gcc/x86_64-unknown-linux-gnu/12.1.0/../../../../x86_64-unknown-linux-gnu/bin/ld: /app/lib/x86_64-linux-gnu/libQt5WebEngineCore.so.5.15.10: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::find_last_not_of(char, unsigned long) const@GLIBCXX_3.4.21'
/usr/lib/gcc/x86_64-unknown-linux-gnu/12.1.0/../../../../x86_64-unknown-linux-gnu/bin/ld: /app/lib/x86_64-linux-gnu/libQt5WebEngineCore.so.5.15.10: undefined reference to `std::__cxx11::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::_M_create(unsigned long&, unsigned long)@GLIBCXX_3.4.21'
/usr/lib/gcc/x86_64-unknown-linux-gnu/12.1.0/../../../../x86_64-unknown-linux-gnu/bin/ld: /app/lib/x86_64-linux-gnu/libQt5WebEngineCore.so.5.15.10: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_erase(unsigned long, unsigned long)@GLIBCXX_3.4.21'
/usr/lib/gcc/x86_64-unknown-linux-gnu/12.1.0/../../../../x86_64-unknown-linux-gnu/bin/ld: /app/lib/x86_64-linux-gnu/libQt5WebEngineCore.so.5.15.10: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::rfind(char const*, unsigned long, unsigned long) const@GLIBCXX_3.4.21'
/usr/lib/gcc/x86_64-unknown-linux-gnu/12.1.0/../../../../x86_64-unknown-linux-gnu/bin/ld: /app/lib/x86_64-linux-gnu/libQt5WebEngineCore.so.5.15.10: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_append(char const*, unsigned long)@GLIBCXX_3.4.21'
/usr/lib/gcc/x86_64-unknown-linux-gnu/12.1.0/../../../../x86_64-unknown-linux-gnu/bin/ld: /app/lib/x86_64-linux-gnu/libQt5WebEngineCore.so.5.15.10: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::copy(char*, unsigned long, unsigned long) const@GLIBCXX_3.4.21'
/usr/lib/gcc/x86_64-unknown-linux-gnu/12.1.0/../../../../x86_64-unknown-linux-gnu/bin/ld: /app/lib/x86_64-linux-gnu/libQt5WebEngineCore.so.5.15.10: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::compare(unsigned long, unsigned long, char const*) const@GLIBCXX_3.4.21'
/usr/lib/gcc/x86_64-unknown-linux-gnu/12.1.0/../../../../x86_64-unknown-linux-gnu/bin/ld: /app/lib/x86_64-linux-gnu/libQt5WebEngineCore.so.5.15.10: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::find_last_of(char const*, unsigned long, unsigned long) const@GLIBCXX_3.4.21'
/usr/lib/gcc/x86_64-unknown-linux-gnu/12.1.0/../../../../x86_64-unknown-linux-gnu/bin/ld: /app/lib/x86_64-linux-gnu/libQt5WebEngineCore.so.5.15.10: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::find_first_of(char const*, unsigned long, unsigned long) const@GLIBCXX_3.4.21'
/usr/lib/gcc/x86_64-unknown-linux-gnu/12.1.0/../../../../x86_64-unknown-linux-gnu/bin/ld: /app/lib/x86_64-linux-gnu/libQt5WebEngineCore.so.5.15.10: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::find_first_not_of(char const*, unsigned long, unsigned long) const@GLIBCXX_3.4.21'
/usr/lib/gcc/x86_64-unknown-linux-gnu/12.1.0/../../../../x86_64-unknown-linux-gnu/bin/ld: /app/lib/x86_64-linux-gnu/libQt5WebEngineCore.so.5.15.10: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::reserve()@GLIBCXX_3.4.29'
/usr/lib/gcc/x86_64-unknown-linux-gnu/12.1.0/../../../../x86_64-unknown-linux-gnu/bin/ld: /app/lib/x86_64-linux-gnu/libQt5WebEngineCore.so.5.15.10: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::pop_back()@GLIBCXX_3.4.21'
/usr/lib/gcc/x86_64-unknown-linux-gnu/12.1.0/../../../../x86_64-unknown-linux-gnu/bin/ld: /app/lib/x86_64-linux-gnu/libQt5WebEngineCore.so.5.15.10: undefined reference to `std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_create(unsigned long&, unsigned long)@GLIBCXX_3.4.21'
collect2: error: ld returned 1 exit status
I suspect the KDE runtime has probably changed since last you updated this base image. Can you try triggering a rebuild against the current KDE runtime 5.15-22.08
branch? Thank you!
Because /app/lib/x86_64-linux-gnu/pkgconfig is missing from the PKG_CONFIG_PATH environment variable, Meson is unable to find Qt modules from the base app.
The workaround I'm using right now is adding it as an additional pkg-config path to the Meson configuration. But it would be great to make this work out of the box.
{
"name": "jacktrip",
"buildsystem": "meson",
"config-opts": [
"-Dbuildtype=debugoptimized",
"-Dpkg_config_path=/app/lib/x86_64-linux-gnu/pkgconfig"
],
"sources": [
{
"type": "git",
"url": "https://github.com/jacktrip/jacktrip/",
"branch": "dev"
}
]
}
Would be nice you could add supp0ort for Qt 6.
Keeping track of QtWebEngine dependent will help decide if we can stop maintaining branches early.
List generated with this simple shell script.
QtWebEngine for 5.15-23.08 is needed.
Note: it doesn't build out of the box, Python gets in the way, again.
Hey guys, so trying to figure out why the build is failing. This is the manifest.
cat rolisteam.json
{
"id": "org.rolisteam.rolisteam",
"branch": "master",
"base": "io.qt.qtwebengine.BaseApp",
"base-version": "5.14",
"runtime": "org.kde.Platform",
"runtime-version": "5.14",
"sdk": "org.kde.Sdk",
"command": "rolisteam",
"tags": ["1.9.3"],
"desktop-file-name-suffix": "",
"finish-args": ["--share=ipc", "--socket=x11", "--socket=wayland", "--share=network", "--socket=pulseaudio", "--filesystem=home", "--env=TMPDIR=/var/tmp",
"--env=GST_PLUGIN_PATH=/usr/lib/$arch/gstreamer-1.0/" ],
"modules": [
{
"config-opts": [ "-DENABLE_TESTING=OFF" ],
"name": "libkdegames",
"buildsystem": "cmake-ninja",
"sources": [ { "type": "git", "url": "https://anongit.kde.org/libkdegames.git" } ],
"modules": [
{
"config-opts": [ "-DENABLE_TESTING=OFF" ],
"name": "openal",
"buildsystem": "cmake-ninja",
"sources": [ { "type": "git", "url": "https://github.com/kcat/openal-soft.git", "branch": "openal-soft-1.18.2" } ]
}
]
},
{ "name": "rolisteam",
"config-opts": [ "QMAKE_INCDIR+=/app/include/QtWebEngineWidgets,/app/include/QtWebEngine,/app/include/QtWebEngineCore"],
"config-opts": [ "QMAKEPATH+=/app/lib"],
"buildsystem": "qmake",
"post-install": [
"mv /app/rolisteam /app/bin/rolisteam",
"rm /app/roliserver"
],
"sources": [
{ "type": "git", "url": "https://invent.kde.org/rolisteam/rolisteam.git", "branch": "stable" }
]
},
{
"name": "rolisteam-data",
"buildsystem": "simple",
"build-commands": [
"install -Dm644 org.rolisteam.rolisteam.desktop /app/share/applications/org.rolisteam.rolisteam.desktop",
"install -Dm644 org.rolisteam.rolisteam.appdata.xml /app/share/appdata/org.rolisteam.rolisteam.appdata.xml",
"install -Dm644 org.rolisteam.rolisteam.svg /app/share/icons/hicolor/scalable/apps/org.rolisteam.rolisteam.svg"
],
"sources": [
{
"type": "file",
"path": "org.rolisteam.rolisteam.desktop"
},
{
"type": "file",
"path": "org.rolisteam.rolisteam.appdata.xml"
},
{
"type": "file",
"path": "org.rolisteam.rolisteam.svg"
}
]
}
]
}
And it fails to build on it's own with the same issue as here
However I have run it with the --build-shell
option to stop and examine by hand.
When applying the commands manually
export QMAKEPATH+=/app/lib
export QMAKE_INCDIR+=/app/include/QtWebEngineWidgets,/app/include/QtWebEngine,/app/include/QtWebEngineCore
It gets further but then stops here:
g++ -c -pipe -Wall -Werror=return-type -O2 -std=gnu++11 -Wall -Wextra -D_REENTRANT -fPIC -DHAVE_SOUND -DWITH_PDF -DHAVE_QT_NETWORK -DHAVE_WEBVIEW -DVERSION_MAJOR=1 -DVERSION_MIDDLE=9 -DVERSION_MINOR=3 -DHAVE_ZLIB -DQT_NO_DEBUG -DQT_OPENGL_LIB -DQT_WEBENGINEWIDGETS_LIB -DQT_PRINTSUPPORT_LIB -DQT_QUICKWIDGETS_LIB -DQT_SVG_LIB -DQT_WIDGETS_LIB -DQT_MULTIMEDIA_LIB -DQT_WEBENGINE_LIB -DQT_WEBENGINECORE_LIB -DQT_QUICK_LIB -DQT_GUI_LIB -DQT_QMLMODELS_LIB -DQT_WEBCHANNEL_LIB -DQT_QML_LIB -DQT_NETWORK_LIB -DQT_XML_LIB -DQT_POSITIONING_LIB -DQT_CORE_LIB -I../../client -I. -I../../client -I../../client/noteeditor/format_OO_oasis_ -I../../client/noteeditor/src -I../../client/diceparser/result -I../../client/diceparser/node -I../../client/diceparser/include -I../../client/diceparser -I../../client/charactersheet -Iformula -Iformula/nodes -I../../client/widgets/MRichTextEditor -I../../client/preferences -isystem /usr/include/QtOpenGL -isystem /usr/include/QtWebEngineWidgets -isystem /usr/include/QtPrintSupport -isystem /usr/include/QtQuickWidgets -isystem /usr/include/QtSvg -isystem /usr/include/QtWidgets -isystem /usr/include/QtMultimedia -isystem /usr/include/QtWebEngine -isystem /usr/include/QtWebEngineCore -isystem /usr/include/QtQuick -isystem /usr/include/QtGui -isystem /usr/include/QtQmlModels -isystem /usr/include/QtWebChannel -isystem /usr/include/QtQml -isystem /usr/include/QtNetwork -isystem /usr/include/QtXml -isystem /usr/include/QtPositioning -isystem /usr/include/QtCore -Ibuild/moc -Isrc -I/usr/lib/mkspecs/linux-g++ -o build/obj/finddialog.o ../../client/sharededitor/finddialog.cpp
../../client/sharededitor/document.cpp:26:10: fatal error: QWebEngineView: No such file or directory
26 | #include <QWebEngineView>
| ^~~~~~~~~~~~~~~~
compilation terminated.
make[1]: *** [Makefile:5470: build/obj/document.o] Error 1
make[1]: *** Waiting for unfinished jobs....
make[1]: Leaving directory '/run/build/rolisteam/build/client'
make: *** [Makefile:48: sub-client-make_first] Error 2
Why it is not finding the files when they are there?
find / -iname "*QwebEn*"
/app/include/QtWebEngineCore/QWebEngineCallback
/app/include/QtWebEngineCore/QWebEngineClientCertificateStore
/app/include/QtWebEngineCore/QWebEngineCookieStore
/app/include/QtWebEngineCore/QWebEngineFindTextResult
/app/include/QtWebEngineCore/QWebEngineHttpRequest
/app/include/QtWebEngineCore/QWebEngineNotification
/app/include/QtWebEngineCore/QWebEngineQuotaRequest
/app/include/QtWebEngineCore/QWebEngineRegisterProtocolHandlerRequest
/app/include/QtWebEngineCore/QWebEngineUrlRequestInfo
/app/include/QtWebEngineCore/QWebEngineUrlRequestInterceptor
/app/include/QtWebEngineCore/QWebEngineUrlRequestJob
/app/include/QtWebEngineCore/QWebEngineUrlScheme
/app/include/QtWebEngineCore/QWebEngineUrlSchemeHandler
/app/include/QtWebEngineCore/qwebenginecallback.h
/app/include/QtWebEngineCore/qwebengineclientcertificatestore.h
/app/include/QtWebEngineCore/qwebenginecookiestore.h
/app/include/QtWebEngineCore/qwebenginefindtextresult.h
/app/include/QtWebEngineCore/qwebenginehttprequest.h
/app/include/QtWebEngineCore/qwebenginenotification.h
/app/include/QtWebEngineCore/qwebenginequotarequest.h
/app/include/QtWebEngineCore/qwebengineregisterprotocolhandlerrequest.h
/app/include/QtWebEngineCore/qwebengineurlrequestinfo.h
/app/include/QtWebEngineCore/qwebengineurlrequestinterceptor.h
/app/include/QtWebEngineCore/qwebengineurlrequestjob.h
/app/include/QtWebEngineCore/qwebengineurlscheme.h
/app/include/QtWebEngineCore/qwebengineurlschemehandler.h
/app/include/QtWebEngineCore/5.14.2/QtWebEngineCore/private/qwebenginecallback_p.h
/app/include/QtWebEngineCore/5.14.2/QtWebEngineCore/private/qwebenginecookiestore_p.h
/app/include/QtWebEngineCore/5.14.2/QtWebEngineCore/private/qwebenginemessagepumpscheduler_p.h
/app/include/QtWebEngineCore/5.14.2/QtWebEngineCore/private/qwebengineurlrequestinfo_p.h
/app/include/QtWebEngineWidgets/QWebEngineCertificateError
/app/include/QtWebEngineWidgets/QWebEngineClientCertificateSelection
/app/include/QtWebEngineWidgets/QWebEngineContextMenuData
/app/include/QtWebEngineWidgets/QWebEngineDownloadItem
/app/include/QtWebEngineWidgets/QWebEngineFullScreenRequest
/app/include/QtWebEngineWidgets/QWebEngineHistory
/app/include/QtWebEngineWidgets/QWebEngineHistoryItem
/app/include/QtWebEngineWidgets/QWebEnginePage
/app/include/QtWebEngineWidgets/QWebEngineProfile
/app/include/QtWebEngineWidgets/QWebEngineScript
/app/include/QtWebEngineWidgets/QWebEngineScriptCollection
/app/include/QtWebEngineWidgets/QWebEngineSettings
/app/include/QtWebEngineWidgets/QWebEngineView
/app/include/QtWebEngineWidgets/qwebenginecertificateerror.h
/app/include/QtWebEngineWidgets/qwebengineclientcertificateselection.h
/app/include/QtWebEngineWidgets/qwebenginecontextmenudata.h
/app/include/QtWebEngineWidgets/qwebenginedownloaditem.h
/app/include/QtWebEngineWidgets/qwebenginefullscreenrequest.h
/app/include/QtWebEngineWidgets/qwebenginehistory.h
/app/include/QtWebEngineWidgets/qwebenginepage.h
/app/include/QtWebEngineWidgets/qwebengineprofile.h
/app/include/QtWebEngineWidgets/qwebenginescript.h
/app/include/QtWebEngineWidgets/qwebenginescriptcollection.h
/app/include/QtWebEngineWidgets/qwebenginesettings.h
/app/include/QtWebEngineWidgets/qwebengineview.h
/app/include/QtWebEngineWidgets/5.14.2/QtWebEngineWidgets/private/qwebenginedownloaditem_p.h
/app/include/QtWebEngineWidgets/5.14.2/QtWebEngineWidgets/private/qwebenginehistory_p.h
/app/include/QtWebEngineWidgets/5.14.2/QtWebEngineWidgets/private/qwebenginenotificationpresenter_p.h
/app/include/QtWebEngineWidgets/5.14.2/QtWebEngineWidgets/private/qwebenginepage_p.h
/app/include/QtWebEngineWidgets/5.14.2/QtWebEngineWidgets/private/qwebengineprofile_p.h
/app/include/QtWebEngineWidgets/5.14.2/QtWebEngineWidgets/private/qwebenginescriptcollection_p.h
/app/include/QtWebEngineWidgets/5.14.2/QtWebEngineWidgets/private/qwebengineview_p.h
/app/lib/plugins/designer/libqwebengineview.so
/app/lib/x86_64-linux-gnu/cmake/Qt5Designer/Qt5Designer_QWebEngineViewPlugin.cmake
Do I need yet another path to be added?
Thanks in advance
Document these as f-e-d-c doesn't keep comments in JSON.
I try to update jdMinecraftLauncher to the newest Runtime, but with the newer Runtime, the login screen which appears on the first start and is using QtWebEngine is just blank. With 6.5 there are no problems.
Ping @bbhtt
I am attempting to package my Qt app as a flatpak.
It relies heavily on QtWebEngine, so I used this base app.
I am using qt6 with org.kde.Sdk and org.kde.Platform.
It packages successfully but then I get this error immediately when the app opens: module “QtWebEngine” plugin “qtwebenginequickplugin” not found.
The line in question is simply “import QtWebEngine” (QML).
First of all, thank you for maintaining this library.
I want to build ugene.
I made a manifest file and tried to build it.
It locates libraries for kde.sdk
but it fails to locate qtwebengine
libraries under /app/lib/x86_64-linux-gnu
instead they
are present in /usr/lib/x86_64-linux-gnu
which they are not reached by build process.
{
"id": "org.kde.UgeneuiPro",
"runtime": "org.kde.Platform",
"runtime-version": "5.14",
"sdk": "org.kde.Sdk",
"base": "io.qt.qtwebengine.BaseApp",
"base-version": "5.14",
"command": "ugeneui",
"rename-icon": "ugene",
"finish-args": [
"--socket=wayland",
"--socket=x11",
"--share=ipc",
"--device=dri",
"--share=network",
"--talk-name=org.kde.StatusNotifierWatcher"
],
"modules": [
{
"name": "ugeneunipro",
"buildsystem": "qmake",
"config-opts": [
"INCLUDEPATH+=/app/include",
"INCLUDEPATH+=/app/include/QtWebEngineWidgets",
"INCLUDEPATH+=/app/include/QtWebEngine",
"INCLUDEPATH+=/app/include/QtWebEngineCore",
"INCLUDEPATH+=/app/include/pci",
"LIBS+=-L/app/lib/x86_64-linux-gnu",
"LIBS+=-L/app/lib/x86_64-linux-gnu/libQt5WebEngine.so",
"LIBS+=-L/app/lib/x86_64-linux-gnu/libQt5WebEngineWidgets.so",
"LIBS+=-L/app/lib/x86_64-linux-gnu/libQt5WebEngineCore.so",
"QMAKE_LIBDIR+=/app/lib/x86_64-linux-gnu",
"QT_PLUGIN_PATH+=/app/lib/x86_64-linux-gnu",
"QMAKE_LFLAGS+=-L/app/lib/x86_64-linux-gnu",
"QT_WEBENGINE_LIB+=-L/app/lib/x86_64-linux-gnu",
"QMAKE_LIBDIR+=/app/lib/x86_64-linux-gnu",
"QT += webengine webenginewidgets",
"CONFIG+=x64"
],
"build-options":{
"prepend-pkg-config-path": "/app/lib/x86_64-linux-gnu/pkgconfig",
"prepend-pkg-config-path": "/app/lib/pkgconfig",
"env":{
"QMAKEPATH": "/app/lib",
"LDFLAGS": "-L/app/lib/x86_64-linux-gnu",
"LD_LIBRARY_PATH": "/app/lib/x86_64-linux-gnu"
}
},
"sources": [ { "type": "dir", "path": "./ugene" } ]
}
]
}
With the latest update of the QtWebEngine, MuseScore fails to build.
QMake version 3.1
Using Qt version 5.15.3 in /usr/lib/x86_64-linux-gnu
CMake Deprecation Warning at CMakeLists.txt:54 (cmake_policy):
The OLD behavior for policy CMP0071 will be removed from a future version
of CMake.
The cmake-policies(7) manual explains that the OLD behaviors of all
policies are deprecated and that a policy should be set to OLD only under
specific short-term circumstances. Projects should be ported to the NEW
behavior and not rely on setting a policy to OLD.
CMake Warning at /app/lib/x86_64-linux-gnu/cmake/Qt5WebEngineCore/Qt5WebEngineCoreConfig.cmake:111 (find_package):
Could not find a configuration file for package "Qt5WebChannel" that is
compatible with requested version "5.15.5".
The following configuration files were considered but not accepted:
/usr/lib/x86_64-linux-gnu/cmake/Qt5WebChannel/Qt5WebChannelConfig.cmake, version: 5.15.3
Call Stack (most recent call first):
/app/lib/x86_64-linux-gnu/cmake/Qt5WebEngine/Qt5WebEngineConfig.cmake:111 (find_package)
build/FindQt5.cmake:42 (find_package)
CMakeLists.txt:84 (include)
CMake Warning at /app/lib/x86_64-linux-gnu/cmake/Qt5WebEngine/Qt5WebEngineConfig.cmake:111 (find_package):
Found package configuration file:
/app/lib/x86_64-linux-gnu/cmake/Qt5WebEngineCore/Qt5WebEngineCoreConfig.cmake
but it set Qt5WebEngineCore_FOUND to FALSE so package "Qt5WebEngineCore" is
considered to be NOT FOUND.
Call Stack (most recent call first):
build/FindQt5.cmake:42 (find_package)
CMakeLists.txt:84 (include)
CMake Warning at build/FindQt5.cmake:42 (find_package):
Found package configuration file:
/app/lib/x86_64-linux-gnu/cmake/Qt5WebEngine/Qt5WebEngineConfig.cmake
but it set Qt5WebEngine_FOUND to FALSE so package "Qt5WebEngine" is
considered to be NOT FOUND.
Call Stack (most recent call first):
CMakeLists.txt:84 (include)
CMake Warning at /app/lib/x86_64-linux-gnu/cmake/Qt5WebEngineCore/Qt5WebEngineCoreConfig.cmake:111 (find_package):
Could not find a configuration file for package "Qt5WebChannel" that is
compatible with requested version "5.15.5".
The following configuration files were considered but not accepted:
/usr/lib/x86_64-linux-gnu/cmake/Qt5WebChannel/Qt5WebChannelConfig.cmake, version: 5.15.3
Call Stack (most recent call first):
build/FindQt5.cmake:42 (find_package)
CMakeLists.txt:84 (include)
CMake Warning at build/FindQt5.cmake:42 (find_package):
Found package configuration file:
/app/lib/x86_64-linux-gnu/cmake/Qt5WebEngineCore/Qt5WebEngineCoreConfig.cmake
but it set Qt5WebEngineCore_FOUND to FALSE so package "Qt5WebEngineCore" is
considered to be NOT FOUND.
Call Stack (most recent call first):
CMakeLists.txt:84 (include)
CMake Warning at /app/lib/x86_64-linux-gnu/cmake/Qt5WebEngineCore/Qt5WebEngineCoreConfig.cmake:111 (find_package):
Could not find a configuration file for package "Qt5WebChannel" that is
compatible with requested version "5.15.5".
The following configuration files were considered but not accepted:
/usr/lib/x86_64-linux-gnu/cmake/Qt5WebChannel/Qt5WebChannelConfig.cmake, version: 5.15.3
Call Stack (most recent call first):
/app/lib/x86_64-linux-gnu/cmake/Qt5WebEngineWidgets/Qt5WebEngineWidgetsConfig.cmake:111 (find_package)
build/FindQt5.cmake:42 (find_package)
CMakeLists.txt:84 (include)
CMake Warning at /app/lib/x86_64-linux-gnu/cmake/Qt5WebEngineWidgets/Qt5WebEngineWidgetsConfig.cmake:111 (find_package):
Found package configuration file:
/app/lib/x86_64-linux-gnu/cmake/Qt5WebEngineCore/Qt5WebEngineCoreConfig.cmake
but it set Qt5WebEngineCore_FOUND to FALSE so package "Qt5WebEngineCore" is
considered to be NOT FOUND.
Call Stack (most recent call first):
build/FindQt5.cmake:42 (find_package)
CMakeLists.txt:84 (include)
CMake Warning at build/FindQt5.cmake:42 (find_package):
Found package configuration file:
/app/lib/x86_64-linux-gnu/cmake/Qt5WebEngineWidgets/Qt5WebEngineWidgetsConfig.cmake
but it set Qt5WebEngineWidgets_FOUND to FALSE so package
"Qt5WebEngineWidgets" is considered to be NOT FOUND.
Call Stack (most recent call first):
CMakeLists.txt:84 (include)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.