Qt WebEngine didn't build from qt-everwhere-src-5.10.0

  • I have a WebKit application running in 5.5.1 and I am trying to upgrade to WebEngine using 5.10.0. my first step was to download the distribution source and do a configure and make. it looks like all other modules I need successfully built, and I see the webengine directory in the source, but not in the build directory. Does it have to be built explicitly and separately, and if so how, or is the an option to configure to cause it to be included with the others?

  • Lifetime Qt Champion


    You might also be interested by @Konstantin-Tokarev QtWebKit reboot.

    As for your question: did you install all the needed tools ?

  • Thank you. I am on macOS, and WebKit built correctly. I did a search fro what was required, and I only see that Xcode is required which I have. Is there a more definitive list, and , does it include tools that were not necessary fro WebKit?

  • Lifetime Qt Champion

  • Thank you for the link. I am above on all three indicated: macOS 10.13, Xcode 9.2, and SDK 10.13.

  • Lifetime Qt Champion

    Did you check the configure log regarding QtWebEngine ?

    Otherwise you can alway use the good old qmake/make/make install triplet. Out of source build is recommended.

  • neither webengine nor WebEngine substrings appear in qt-build/config.log.

    Before reaching out on forum, I did try the following:
    cd qt-build (at same level as qt-everywhere-src-5.10.0)
    mkdir qtwebengine
    cd qtwebengine
    ../qtbase/qmake ../qt-everywhere-src-5.10.0/qtwebengine

    it said that there was no file in qt-build/qtwebengine named qtwebengine-config.pri. That is correct; nothing is in qt-build-qtwebengine at the point of doing the qmake. as it happens, there is a file called cofigure.pri inside of the source directory for qtwebengine, but not one called qtwebengine-config.pri

  • My strong preference is that webengine build with the main build. Toward that end, here is what I did:
    tar -xvf qt-everywhere-src-5.10.0.tar.xz
    mkdir Qt-build
    cd Qt-build
    ../qt-everywhere-src-5.10.0/configure -release -nomake tests -nomake examples -securetransport -skip qtdeclarative -skip qtquickcontrols -skip qtwebchannel -skip qtsensors -skip qtserialport -skip qtwayland -skip qtandroidextras -skip qtx11extras -skip qtconnectivity
    make -j4
    make install

    But I did try the qmake route again. I may have made a mistake yesterday since I get a different error today. Here is what I did, and its results:
    brahms:~/repos/ia-build/libs/Qt-build>mkdir qtwebengine
    brahms:~/repos/ia-build/libs/Qt-build>cd qtwebengine/
    brahms:~/repos/ia-build/libs/Qt-build/qtwebengine>../qtbase/bin/qmake /Users/buckler/repos/ia-build/libs/qt-everywhere-src-5.10.0/qtwebengine/
    Info: creating cache file /Users/buckler/repos/ia-build/libs/Qt-build/qtwebengine/.qmake.cache
    Project ERROR: Configure tests are not supported with the DUMMY Makefile generator.

    I tried to look up what the dummy platform was, so I then tried it again but using -platform macx-clang and it had the same result.

  • Lifetime Qt Champion

    Did you call the qmake you installed or the one from the build folder ?

  • Ah! It worked better when using the qmake I installed.

    It ran but had errors, which I will put below. But before that, I would really like this to work form the main build, and an error from below makes me want to ask: does WebEngine require either connectiviyt, or WebChannel, both of which I have skipped from my original configure. Could it be, that one or both of those are what caused WebEngine not to build with the rest?

    As to the errors form the specific qmake:

    Project ERROR: Unknown module(s) in QT: qml quick webchannel
    make[2]: *** [sub-core_generator-pro-make_first] Error 3
    make[1]: *** [sub-core-make_first] Error 2
    make: *** [sub-src-make_first] Error 2

  • Lifetime Qt Champion

    As the error states, your are missing 3 modules: qml quick and web channel.

  • Thank you.
    Since I have stated the preference to get the overall build to generate it, that is what I am pursuing. I removed -skip qtquickcontrols -skip qtwebchannel -skip qtconnectivity from the configure and still no qtwebengine directory in qt-build.

    That is,
    tar -xvf qt-everywhere-src-5.10.0.tar.xz
    mkdir Qt-build
    cd Qt-build
    ../qt-everywhere-src-5.10.0/configure -release -nomake tests -nomake examples -securetransport -skip qtdeclarative -skip qtsensors -skip qtserialport -skip qtwayland -skip qtandroidextras -skip qtx11extras
    make -j4

    ...does not produce a qtwebengine directory. Do you see anything else wrong?

  • Lifetime Qt Champion

    Build qtdeclarative.

  • That did it, thank you!

Log in to reply