Is it possible to build Qt WebKit separately?



  • OS: windows
    compiler: visual c++ 2015

    I require features from both Qt 5.8 and QtWebKit and I have been trying to unsuccessfully build the QtWebKit and QtWebKitWidgets modules.

    I have downloaded the source from: http://download.qt.io/community_releases/5.8/5.8.0-final/

    and trying to build it with the following command:

    perl Tools/Scripts/build-webkit --qt --release --cmakeargs="-DCMAKE_PREFIX_PATH=c:\path\to\qt\5.8.0"
    

    Have managed to correctly set up all required tools (cmake, ruby, perl, python, bison, flex, gperf) and the environment variable for some some sql sources from the qt dir,

    but it says it can't find ICU which is required so it won't build. I do have icu lib/header/dlls built on msvc14 too, but I can't find information as to which environment variable or parameter I need to set to point it to the correct place.

    I want to avoid having to rebuild the entire qt 5.8 with this module too, so I was wondering whether it was possible to build it this way.

    Any help is appreciated!


  • Lifetime Qt Champion

    Hi and welcome to devnet,

    You might be interested in @Konstantin-Tokarev QtWebkit reboot, it has pre-build MSVC 2015 package.



  • Late reply but thanks! Tried it and it seems to work nicely as a drop-in replacement. Seems to have fixed some bugs on Mac as well (like proper scaling on retina display). But also noticed a couple of possible glitches. Would like to get the old one up and running and compare and would happily report findings to the new project.

    But I'm afraid the question still stands, I'm still looking for a way to build QtWebkit from source (5.8/ community releases), and I'm hitting a major roadblock telling it where to find ICU. I know the main Qt build script seems to get it from environment variables, but that doesn't seem to be working in this case :(


  • Lifetime Qt Champion

    Still on Windows or macOS ?



  • Windows really (eventually all 3 platforms but I think I can work around that).

    I am having a similar problem to this post: https://forum.qt.io/topic/70208/building-qtwebkit-for-qt-5-7-win32-msvc2015/12

    I think when QtWebkit is built as part of the bigger Qt build, if those variables are set (LIB and INCLUDEPATH), when it gets down to building QtWebkit it manages to find it.

    But I can't see an evident way of doing the same when building the same in a standalone manner. I can see that the perl scripts seem to be running some sort of ICU build test using qmake, but there is also a FindICU cmake package, so I'm not entirely sure what's set and what stage.

    Hence the question of whether it is possible to build QtWebkit independently on windows in the first place. While I havent tried on osx and linux, I have hopes that if ICU is in the system lib paths, it will just find it there.



  • @jcar87 To build legacy QtWebKit you should point LIB and INCLUDEPATH variables to locations of your ICU includes and libraries. So it's absolutely possible to build it standalone, though you should not do that because it is insecure, slow[*], and does not support modern web standards.

    [*] On Windows it lacks LLInt tier in JavaScript engine that is important for good speed. In TP5 it works as it was designed.


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.