Skip to content
Qt 6.11 is out! See what's new in the release blog
  • 0 Votes
    3 Posts
    311 Views
    T
    @Nils-Sjoberg Thanks for the suggestion! I tested with: OPENSSL_armcap=0 Unfortunately, it doesn't change the behaviour. The application still crashes on the Raspberry Pi 3, so it doesn't appear to be an OpenSSL CPU capability detection issue. However, I have an interesting update that may help narrow down the problem. Originally, my WebEngineProfile was configured like this: property string tmpDir: session.getPlatform() == "windows" ? "C:/Temp/xx" : "/tmp" WebEngineProfile { offTheRecord: false persistentStoragePath: tmpDir + "/xx-webengine-" + content.uuid() cachePath: tmpDir + "/xx-webcache-" + content.uuid() } So every WebEngineView was using a profile stored under /tmp, with a directory name based on content.uuid(). I then changed only the profile/cache location to a persistent directory under the user's home instead of /tmp, for example: persistentStoragePath: "/home/xx/.local/share/xx/NeoPlayer/WebEngine/profile" cachePath: "/home/xx/.local/share/xx/NeoPlayer/WebEngine/cache" (or an equivalent persistent location). Since this change: the application progresses much further during startup, several crashes no longer occur, the remaining crash is now consistently inside QtWebEngineCore, typically in a thread named CacheThread_Blo, with a backtrace ending in malloc() / operator new() inside libQt5WebEngineCore.so. In other words, changing only persistentStoragePath and cachePath significantly changes the failure mode. What puzzles me is that the original code works perfectly on a Raspberry Pi 5, while it crashes on the Raspberry Pi 3. Some additional comparison between the two systems: Both run Debian 13 (Trixie). /tmp is a tmpfs on both systems. Both use the same application source code. Both are built from the same Qt 5.15.17 build system (with architecture-specific binaries). The Raspberry Pi 5 runs AArch64 (64-bit), while the Raspberry Pi 3 runs ARMv7 (32-bit). This makes me wonder whether the issue is not /tmp itself, but rather how QtWebEngine/Chromium initializes and manages a WebEngineProfile on 32-bit ARM. Changing the profile location seems to alter the internal initialization sequence enough that the crash either disappears or occurs much later during startup. Am I overlooking something about how WebEngineProfile is expected to be used? In particular: Is storing a WebEngineProfile under /tmp considered bad practice or unsupported? Is creating profile directories dynamically using content.uuid() likely to expose issues or race conditions inside QtWebEngine? Would you instead recommend creating a single long-lived WebEngineProfile and reusing it across all WebEngineView instances? Has anyone seen similar behaviour where changing only persistentStoragePath or cachePath changes or eliminates crashes in QtWebEngine? If there are other diagnostics that would help identify the root cause, I'd be happy to run them and share the results.
  • Qt6WebEngine Installation problem

    Unsolved QtWebEngine qtwebengine msvc2019 webengine qt6.7.2
    4
    0 Votes
    4 Posts
    4k Views
    C
    In versions >= 6.8.0, the WebEngine was moved to the "Extensions" subfolder, see also here: https://stackoverflow.com/a/79299968
  • No gn found for cross-compilation

    Unsolved QtWebEngine qtwebengine crosscompiling raspberrypi
    4
    0 Votes
    4 Posts
    4k Views
    S
    @Wycer said in No gn found for cross-compilation: @SamiV123 I do need, main module of my project. I googled a lot and eventually found that link too, however I am not sure what to do next. I tried following their install process but still got the error, I tried installing using apt and also didn't work. If you can guilde me a little more that would be great! And thanks a lot for your time and effort :) Sorry, all I can offer is try following the chromium build instructions, if you can get your env to a point where you can build the chromium source then it should hopefully work for Qt as well. https://www.chromium.org/developers/how-tos/get-the-code/
  • 0 Votes
    8 Posts
    5k Views
    S
    @JoeCFD Where is it located in the relative /QT folder? /... like 5.12.5 , dist, Docs, Examples
  • 0 Votes
    1 Posts
    1k Views
    No one has replied
  • Download full web page

    Solved QtWebEngine qtwebengine python3
    7
    0 Votes
    7 Posts
    4k Views
    Black CatB
    @mpergand Thank you man =)
  • 0 Votes
    3 Posts
    2k Views
    SGaistS
    Hi and welcome to devnet, That's a bit too vast of a topic to have a simpler answer. What element of Cyber Security do you have in mind ? At what level ? Cyber Security starts from giving people access to certain hardware / applications to the boot process of your machines/devices, the kernel/OS they are running, the applications you are using on them, the libraries that composes these applications, the devices you plug in the machines, etc.
  • QtWebEngine MSVC Compiler

    Unsolved QtWebEngine msvc qtwebengine uwp
    4
    0 Votes
    4 Posts
    2k Views
    SGaistS
    The QtWebView module comes to mind for that.
  • 0 Votes
    1 Posts
    1k Views
    No one has replied
  • Disable or change default QtWebEngine styling

    Unsolved QtWebEngine qtwebengine chromium styling
    1
    0 Votes
    1 Posts
    1k Views
    No one has replied
  • QWebEngineView crashes on Chromium error

    Solved QtWebEngine qt5.14.2 qtwebengine chromium
    11
    0 Votes
    11 Posts
    9k Views
    Jez1337J
    @KH-219Design glad to know I helped and thanks again for your input! After working perfectly during one full day of tests, the problem resurfaced again yesterday. Anything built in C++ using QWebEngineView works for all of my tests until it gets to one of the problem URLs, then abruptly crashes. No other URLs cause this problem and the page in question loads fine in any "real" browser I try it in. Since I'm not tied to any particular version of Qt, I've downgraded from Qt 5.14.2 to Qt 5.13.2. The Qt 5.13.2 QWebEngineView is not crashing. Also, it seems faster than Qt 5.14.2, and doesn't have another annoying behaviour which I believe to be graphics driver-related, which is that for certain pages of a well known UK based left wing newspaper the URL loads and then the whole web engine widget goes grey, and the program freezes. With no interest in faffing around further, I'm concluding that inside Qt 5.14.2, either the implementation of Chromium or the Qt WebEngine wrapper is buggy, at least for my particular combination of hardware and software. Original Problem Using MSVC 2017 + Qt 5.14.2, QWebEngineView crashes randomly on certain URLs which do not appear to be doing anything out of the ordinary. Solution Avoid Qt 5.14.2, or at least avoid the pre-built MSVC 2017 version which comes when you use the offline installer for Qt 5.14.2. In my case this meant downgrading to Qt 5.13.2.
  • 0 Votes
    2 Posts
    2k Views
    J
    hi vpettersson, i got the same errors and got it working with 3 symlinks: in sysroot/opt/vc/include/EGL mv egl.h egl.h-old mv eglext.h eglext.h-old mv eglplatform.h eglplatform.h-old ln -s /home/jw78/raspi/qt-everywhere-src-5.15.2/qtwebengine/src/3rdparty/chromium/third_party/khronos/EGL/eglext.h eglext.h ln -s /home/jw78/raspi/qt-everywhere-src-5.15.2/qtwebengine/src/3rdparty/chromium/third_party/khronos/EGL/egl.h egl.h ln -s /home/jw78/raspi/qt-everywhere-src-5.15.2/qtwebengine/src/3rdparty/chromium/third_party/khronos/EGL/eglplatform.h eglplatform.h of course you must adjust your paths (/home/jw78/raspi/qt-everywhere-src-5.15.2) there are many egl.h/eglext.h/eglplatform.h to include and because of the include order the comiler fetches first the files in sysroot/opt/vc/include/EGL probably the better solution is to reorder the "-I" flags for the compiler, but i have no idea how to do this i did not dpkg --purge libraspberrypi-dev
  • 0 Votes
    23 Posts
    18k Views
    M
    @jsulm http://download.qt.io/official_releases/qt/5.12/5.12.8/single/qt-everywhere-src-5.12.8.tar.xz i downloaded it form here and followed this steps https://www.tal.org/tutorials/building-qt-512-raspberry-pi according to that i can say that 3rd party content also built along with the code
  • Flashing page when select combobox

    Unsolved QtWebEngine browser qtwebengine
    1
    0 Votes
    1 Posts
    1k Views
    No one has replied
  • Native compile QtWebEngine Raspberry Pi 4

    Unsolved QtWebEngine qtwebengine raspberry pi 4
    2
    0 Votes
    2 Posts
    2k Views
    P
    hi wish this help https://forum.qt.io/topic/117637/easy-way-to-cross-compile-qt-for-raspberry-pi
  • 0 Votes
    2 Posts
    3k Views
    C
    The following command fixed. sudo xcode-select -s /Applications/Xcode.app/Contents/Developer
  • 0 Votes
    2 Posts
    2k Views
    V
    It's a QT bug ( https://bugreports.qt.io/browse/QTBUG-79254 ) If somebody every needs it again I implemented a workaround which I posted here: https://stackoverflow.com/questions/62152845/touch-freeze-in-qtwebengine-after-opening-a-dropdown-menu
  • 0 Votes
    6 Posts
    5k Views
    SGaistS
    Great ! Since you have it working now, please mark the thread as solved using the "Topic Tools" button so that other forum users may know a solution has been found :-) In case, there's an answer that provides the correct hint, you can also use the three button menu to mark it as the correct answer.
  • 0 Votes
    1 Posts
    1k Views
    No one has replied
  • 0 Votes
    2 Posts
    3k Views
    Pablo J. RoginaP
    @forca maybe you need to do some additional steps From QSslSocket documentation: Describes the peer verification modes for QSslSocket. The default mode is AutoVerifyPeer, which selects an appropriate mode depending on the socket's QSocket::SslMode. QSslSocket::QueryPeer 1 QSslSocket will request a certificate from the peer, but does not require this certificate to be valid. This is useful when you want to display peer certificate details to the user without affecting the actual SSL handshake. This mode is the default for servers. Note: In Schannel this value acts the same as VerifyNone. And looking at this QWebEnginePage browser example, check the Downloading Favicons code snippet, which may help you accessing the underlying QSslSocket