×

Discussion Board

Page 1 of 2 12 LastLast
Results 1 to 15 of 17
  1. #1
    Nokia Developer Expert
    Join Date
    Jul 2008
    Posts
    10

    Building qt with webkit.org trunk source?

    Hi,

    I know that the release version of Qt-4.6.0 comes with a specific version of the Webkit source. Is there a way to make it use the webkit.org trunk instead so that I can update webkit from svn regularly? I.e. can I symlink my checkout of webkit.org source or is there something else I need to do. (I tried the symlink thing and it doesn't work).

    Thanks!
    -m

  2. #2
    Super Contributor
    Join Date
    Oct 2009
    Posts
    4,326

    Re: Building qt with webkit.org trunk source?

    If I got it correctly, you need to update Webkit source inside Qt sources with latest Webkit sources, then rebuild the Qt and reinstall Qt.

  3. #3
    Nokia Developer Expert
    Join Date
    Jul 2008
    Posts
    10

    Re: Building qt with webkit.org trunk source?

    Yeah, exactly.

    Thanks!

  4. #4
    Nokia Developer Expert
    Join Date
    Jul 2008
    Posts
    10

    Re: Building qt with webkit.org trunk source?

    So how do I do it?

    If I copy webkit trunk into the qt/3rdparty/webkit directory, it won't build. The makefiles/.pro files don't seem to like building within qt. Are there some patches I would need to build it this way?

    Thanks,
    -m

  5. #5
    Super Contributor
    Join Date
    Oct 2009
    Posts
    4,326

    Re: Building qt with webkit.org trunk source?

    Try meld to compare webkit original sources with webkit sources in Qt. The most likely they are patched. In case of problems it's good idea to contact Qt developers.
    http://lists.trolltech.com/mailman/listinfo/qt-interest

  6. #6
    Registered User
    Join Date
    Jul 2009
    Posts
    5

    Re: Building qt with webkit.org trunk source?

    if you just want to use webkit from webkit.org you simply compile that as described here:
    http://trac.webkit.org/wiki/QtWebKit

    then place an include in your .pro file like this
    include(../path/to/WebKit/WebKit.pri)

    and remove webkit from your QT variable in the .pro file

    then include the headers where you need them by hand
    #include <qwebelement.h>
    #include <qwebframe.h>
    #include <qwebinspector.h>
    #include <qwebpage.h>
    #include <qwebsettings.h>
    #include <qwebview.h>
    #include <qwebkitversion.h>

    ... at least that's the way I did it
    Last edited by Flo1240; 2010-01-20 at 23:31. Reason: forgot something

  7. #7
    Regular Contributor
    Join Date
    Sep 2008
    Posts
    286

    Re: Building qt with webkit.org trunk source?

    This is simplification of how to build external webkit using SBSv1 aka ABLD for S60 SDKs.
    SBSv2 and trunk don't like each other and is why I excluded that from this 'guide'.

    For repository I recommend using webkit mirror at gitorious (http://gitorious.org/webkit) because I like GIT more than SVN

    First thing you need to do is set WEBKITDIR to point to trunk root you have e.g "set WEBKITDIR=c:\repos\webkit"
    Then when you run configure -no-webkit you should see prompt "using external webkit". You don't have to run configure if you don't want to. just make sure your apps include the headers from webkit instead of Qt dir when compiling against them. Make sure that the webkit dir is in relatively short path from drive root as otherwise you end up in situation where the build breaks due to exceeding cmd.exe max character length 8k.

    Next up is updating your SDK:
    in epoc32/gcc/bin you find really old version of bison/flex/m4 . you need to update these. download them from http://gnuwin32.sourceforge.net/. note that you also need to copy epoc32/gcc/shared over from bison dir installation. _You have to explicitly copy these over as the paths are hardcoded in the toolchain, so setting env path won't help you_. To check that you have the correct version after building look for webcore/generated/CSSGrammar.cpp header and check that the Bison version matches the one you downloaded (2.4.1); anything higher than 2.2 will do.

    Current trunk won't compile out of the box for WINSCW , you need to apply few pending pathces on top of it from webkit bugzilla. see what is missing from Symbian - port tracker: https://bugs.webkit.org/show_bug.cgi?id=27065.

    To build for ARM target you need RVCT2.2 which you need buy.. Or go through more steps to build with GCCE4.4.1 http://qt.gitorious.org/qt/pages/Sym...BuildWithGCCE4 .

    chdir into WEBKITDIR/webcore and run qmake and make <target> and wait.

    Note that only release builds are possible with RVCT, debug builds are too big and crash the linker. GCCE you can do debug builds if you are prepared to wait for several hours for linker to finish.

    -Janne

  8. #8
    Nokia Developer Expert
    Join Date
    Jul 2008
    Posts
    10

    Re: Building qt with webkit.org trunk source?

    Thanks Janne, I am building it on Linux but your suggestion got me pretty far. I had to tweak some makefiles because it couldn't find the generated sources. But then I got a compiler error and gave up for now. I'll probably go and tweak it some more to get it to continue building.

    I wish I knew how the Qt developers themselves do this. I wonder if they always build their Qt workspace with webkit trunk, or if they do a webkit trunk snapshot (frozen) at some point and then make that work... The only reason I'm doing this is because I'm trying to develop an app on top of webkit on top of Qt, and need to be able to fix bugs all the way down to the webkit layer (and maybe even Qt layer).

    -m

  9. #9
    Registered User
    Join Date
    Feb 2004
    Posts
    14

    Re: Building qt with webkit.org trunk source?

    Quote Originally Posted by jakoskin View Post

    Current trunk won't compile out of the box for WINSCW , you need to apply few pending pathces on top of it from webkit bugzilla. see what is missing from Symbian - port tracker: https://bugs.webkit.org/show_bug.cgi?id=27065.

    -Janne
    Yes, I have noticed this I get weird error messages(
    ..\JavaScriptCore\runtime\UStringImpl.h:263: struct/union/class member 'WTF::FastAllocBase:perator new(unsigned int, void *)' redefined
    ..\JavaScriptCore\runtime\UStringImpl.h:263: (included from: )

    I haven't yet applied patches from bugzilla, so maybe problems blow away after that.

  10. #10
    Regular Contributor
    Join Date
    Sep 2008
    Posts
    286

    Re: Building qt with webkit.org trunk source?

    @jusav

    Redefinition of new operator is a warning ? edit.. ah This should go away with applying the refptr/passrefptr patch.
    There is a lot of new without delete - operator warnings. you can ignore most of these as global delete will work on these objects. annoying spam I agree

    https://bugs.webkit.org/show_bug.cgi?id=28054
    https://bugs.webkit.org/show_bug.cgi?id=29204

    Are the 2 remaining compilation related issues for WINSCW.

    @mikemoretti

    To reproduce a bug I use build under 3rdparty/webkit. When doing a fix I'm using trunk as in the end you need to check that your fix compiles and runs against the trunk. This is simplification, backporting patches into stable branch 4.6.x requires to test it against both cases.

    If you are going to work directly on trunk I would suggest that you join #qtwebkit on freenode. In addition you might want to join QtWebkit mail-list http://lists.webkit.org/mailman/listinfo.cgi/webkit-qt .

    Building trunk on Linux for Symbian might bit tricky, should be doable. did you try "build-webkit --qt --symbian" script ? and if yes how did it work out? this is a new addition and can be pretty limited to environment that it works on.

    -Janne

  11. #11
    Registered User
    Join Date
    Feb 2004
    Posts
    14

    Re: Building qt with webkit.org trunk source?

    About refptr/passrefptr patch, I don't find WebCore/bridge/jni/jni_instance.h when trying to apply patch?

  12. #12
    Nokia Developer Expert
    Join Date
    Jul 2008
    Posts
    10

    Re: Building qt with webkit.org trunk source?

    Hi,

    I'm not building for Symbian at all. I am building an app on top of webkit + qt on linux.

    Thanks for your further info. I think I just need to decide how I want to really do this. Whether I want to actually try to get my app to build from webkit trunk separately and qt or try to get qt to build webkit trunk under the 3rdparty directory (instead of the one that comes with it).

    -m

  13. #13
    Regular Contributor
    Join Date
    Sep 2008
    Posts
    286

    Re: Building qt with webkit.org trunk source?

    Quote Originally Posted by mikemoretti View Post
    Hi,

    I'm not building for Symbian at all. I am building an app on top of webkit + qt on linux.

    Thanks for your further info. I think I just need to decide how I want to really do this. Whether I want to actually try to get my app to build from webkit trunk separately and qt or try to get qt to build webkit trunk under the 3rdparty directory (instead of the one that comes with it).

    -m
    Then you should look at http://trac.webkit.org/wiki/BuildingQtOnLinux .
    Copying files over into 3rdparty/webkit is a bad idea. 3rdparty/webkit contains pre-generated files which don't exist on trunk until you run generate them. In addition trunk contains other files that are not 3rdparty.. and <cross fingers> if you ever need to make changes to the templates.

  14. #14
    Regular Contributor
    Join Date
    Sep 2008
    Posts
    286

    Re: Building qt with webkit.org trunk source?

    Quote Originally Posted by jusav View Post
    About refptr/passrefptr patch, I don't find WebCore/bridge/jni/jni_instance.h when trying to apply patch?
    Patch has gone stale, that file has been deleted from trunk a week ago (53497) :S
    You can see that it is quite controversial from the discussion ..
    You could try my suggestion "what is still required" or just run that patch and ignore the jini part.

  15. #15
    Nokia Developer Expert
    Join Date
    Jul 2008
    Posts
    10

    Re: Building qt with webkit.org trunk source?

    Quote Originally Posted by jakoskin View Post
    Then you should look at http://trac.webkit.org/wiki/BuildingQtOnLinux .
    Copying files over into 3rdparty/webkit is a bad idea. 3rdparty/webkit contains pre-generated files which don't exist on trunk until you run generate them. In addition trunk contains other files that are not 3rdparty.. and <cross fingers> if you ever need to make changes to the templates.
    Yeah, I noticed that there was some stuff missing (generated files) and some extra stuff. How does the Qt team deal with that when they have to grab the latest webkit for a new release?

    -m

Similar Threads

  1. Very very odd bug (Doesn't run application in debug phone configuration)
    By m31wayfarer@gmail.com in forum Carbide.c++ IDE and plug-ins (Closed)
    Replies: 15
    Last Post: 2009-07-20, 09:08
  2. Porting C Open source.
    By debasish1234 in forum Open C/C++
    Replies: 7
    Last Post: 2008-01-28, 11:06
  3. problem viewing variable values when debugging
    By jas203 in forum Carbide.c++ IDE and plug-ins (Closed)
    Replies: 0
    Last Post: 2006-03-25, 22:37
  4. Series 60 SDK Appwizard on windows xp
    By moonjoor in forum Symbian Tools & SDKs
    Replies: 15
    Last Post: 2003-12-24, 10:22

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
×