Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

QtWebEngine Illegal Instruction



  • Hi,

    I am developing a QT app for rpi 0 w. I have used buildroot to create my own image. I have a Qt app running on it, and now I need to add a web browser to my app. On a first approach I am using WebEngineView, but the app is not running, and I only have the import QtWebEngine 1.8, no more code related to WebEngine

    # ./cp4gui -platform eglfs
    Illegal instruction
    

    .pro file

    QT += quick webengine
    
    CONFIG += c++11
    
    # The following define makes your compiler emit warnings if you use
    # any Qt feature that has been marked deprecated (the exact warnings
    # depend on your compiler). Refer to the documentation for the
    # deprecated API to know how to port your code away from it.
    DEFINES += QT_DEPRECATED_WARNINGS
    
    # You can also make your code fail to compile if it uses deprecated APIs.
    # In order to do so, uncomment the following line.
    # You can also select to disable deprecated APIs only up to a certain version of Qt.
    #DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000    # disables all the APIs deprecated before Qt 6.0.0
    
    SOURCES += \
            QTcp4Conf.cpp \
            main.cpp
    
    RESOURCES += qml.qrc
    
    # Additional import path used to resolve QML modules in Qt Creator's code model
    QML_IMPORT_PATH =
    
    # Additional import path used to resolve QML modules just for Qt Quick Designer
    QML_DESIGNER_IMPORT_PATH =
    
    # Default rules for deployment.
    qnx: target.path = /tmp/$${TARGET}/bin
    else: unix:!android: target.path = /opt/$${TARGET}/bin
    !isEmpty(target.path): INSTALLS += target
    
    
    HEADERS += \
        QTcp4Conf.h
    
    • Qt PageForm:
    import QtQuick 2.7
    import QtQuick.Controls 2.0
    import QtGraphicalEffects 1.0
    import QtWebEngine 1.0
    
    
    Page {
        id: page2
        width: 800
        height: 480
        title: qsTr("")
    
        /*WebEngineView{
            url: "https:/"
            //preferredWidth: 490
            //preferredHeight: 400
            scale: 0.5
            smooth: false
        }*/
    
    }
    
    • Qt main.cpp
    #include <QGuiApplication>
    #include <QQmlApplicationEngine>
    #include "QTcp4Conf.h"
    #include <qtwebengineglobal.h>
    
    
    
    // ------------------ MAIN ----------------------------------------
    int main(int argc, char *argv[])
    {
    
       // enables the virtual keyboard by setting the QT_IM_MODULE
       qputenv("QT_IM_MODULE", QByteArray("qtvirtualkeyboard"));
    
       // lets the web view automatically scale on high-dpi displays
        QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
    
        //initis the QtWebEngine
        QtWebEngine::initialize();
    
        QGuiApplication app(argc, argv);
    
        // Añadir tipos propios
        qmlRegisterType<QTcp4Conf>("com.rscr.cp4",1,0,"QTcp4Conf");
    
        QQmlApplicationEngine engine;
        const QUrl url(QStringLiteral("qrc:/main.qml"));
        QObject::connect(&engine, &QQmlApplicationEngine::objectCreated,
                         &app, [url](QObject *obj, const QUrl &objUrl) {
            if (!obj && url == objUrl)
                QCoreApplication::exit(-1);
        }, Qt::QueuedConnection);
        engine.load(url);
    
        return app.exec();
    }
    

    Any idea?

    Kind Regards,

    Rafa


Log in to reply