Important: Please read the Qt Code of Conduct -

Unable to build Qt5.12.2 QtWebEngine module VS2017

  • Hi,
    I am trying to build Qt5.12.2, but the build end with error in Chromium and the message saying that "ninja: build stopped: subcommand failed." and errors popping from the WebEngine Make file.
    Also I am unable to build only the Webengine separately.
    The environment is correct as I am able to build Qt5.11.0 and 5.11.2 without any issue. Is there anything else that needs to be changed or added in Qt5.12 library in order to build it.?

    I am using:
    ICU (v58.2) Library
    OpenSSL (v1.0.1g) Library
    Python 2.7.15
    Strawberry Perl
    with VS2017 as the compiler to build the library in both Windows 7 and 10 OS and windows 10 SDK support.

    The configure command is:
    configure -debug-and-release -force-debug-info -prefix D:\qtInstall -opensource -confirm-license -icu -openssl-linked -platform win32-msvc -opengl dynamic -nomake examples -nomake tests

    and using jom, 16GB Ram and 8 cores.

    Any help is greatly appreciated!
    Thanks for reading.

    C:\Qt5.12.2_VS\qtwebengine\src\3rdparty\chromium\gpu/ipc/service/direct_composition_surface_win.h(132): error C2065: 'IDCompositionDevice2': undeclared identifier
    C:\Qt5.12.2_VS\qtwebengine\src\3rdparty\chromium\gpu/ipc/service/direct_composition_surface_win.h(132): error C2923: 'Microsoft::WRL::ComPtr': 'IDCompositionDevice2' is not a valid template type argument for parameter 'T'
    C:/Qt5.12.2_VS/qtwebengine/src/core/javascript_dialog_manager_qt.cpp /Foobj/QtWebEngineCore/javascript_dialog_manager_qt.obj /Fd"obj/QtWebEngineCore_cc.pdb"
    cl : Command line warning D9025 : overriding '/W4' with '/W3'

    ninja: build stopped: subcommand failed.
    jom: C:\Qt5.12.2_VS\qtwebengine\src\core\Makefile.gn_run.Debug [run_ninja] Error 1
    jom: C:\Qt5.12.2_VS\qtwebengine\src\core\Makefile.gn_run [debug-all] Error 2
    jom: C:\Qt5.12.2_VS\qtwebengine\src\core\Makefile [sub-gn_run-pro-make_first] Error 2
    jom: C:\Qt5.12.2_VS\qtwebengine\src\Makefile [sub-core-make_first] Error 2
    jom: C:\Qt5.12.2_VS\qtwebengine\Makefile [sub-src-make_first] Error 2
    jom: C:\Qt5.12.2_VS\Makefile [module-qtwebengine-make_first] Error 2

  • This is my config line for 5.12.3 that seems to work (I'm using the x64-86 cross compile environment):

    %_ROOT%\configure -prefix %_ROOT%\..\5.12.3-32-release -nomake examples -nomake tests -skip qtandroidextras -skip qtgamepad -skip qtmacextras -skip qtquickcontrols -skip qt3d -skip qtcanvas3d -skip qtx11extras -skip qtactiveqt -skip qtcharts -skip qtdatavis3d -skip qtpurchasing -skip qtquickcontrols2 -skip qtvirtualkeyboard -skip qtwayland -opensource -opengl dynamic -confirm-license -I %_OPENSSL%\include -L %_OPENSSL%\lib\windows\lib32\release

  • Unfortunately this configure command doesn't work either, I am not sure why this would happen as, I am able to build 5.11.* without any issue, however 5.12.2, seems to break QtWebEngine module.
    Since 5.11 and 5.12 are both binary compatible libraries, it seems odd that this would happen, however on closer investigation it seems the UI for the 2 versions seems to differ as well...

  • Did you try 5.12.3? That works fine for me.

  • @JonathanA It is similar in 5.12.3 as well, however the difference is that more is built before it hits the same error.

  • @JonathanA said in Unable to build Qt5.12.2 QtWebEngine module VS2017:

    t works fine for me.

    Would it be possible to share your build environment, so I can match that with mine, it seems like I am missing something here...

  • Just remember - you have to use the x64_x86 Cross Tools Command Prompt for the VS2017 environment. It won't build with the 32 bit compiler. So that's what I am using when I do this.

Log in to reply