[webkit-help] Windows port depends on Safari?

Nick Guenther Nick.Guenther at dossierview.com
Thu Feb 24 11:57:42 PST 2011

Thanks very much Nimish. That was something I could have found myself but it would have been a while running in circles before I figured out what it was.

By the way you also need -release or -debug to make it build with --wincairo. And a bunch of dependencies. (so sayeth https://trac.webkit.org/wiki/BuildingCairoOnWindows). I'll dig into this next week probably when I have some free time for experimenting again.

From: Nimish Nayak [mailto:nimishnayk at gmail.com]
Sent: Thursday, February 24, 2011 1:06 AM
To: Nick Guenther
Cc: webkit-help at lists.webkit.org
Subject: Re:[webkit-help] Windows port depends on Safari?

@Nick Guenther


Firstly there are two ports for Windows
1. Apple's Window Port (Default)
2. Cairo's Window Port

Main Difference Apple's port is dependent on CoreGraphics for graphics, CoreNetworks for networking, CoreFoundation for datatype definition, IPC etc which are proprietary Apple Software.
Whereas Cairo Port is the Open Source version of the same it replaces CoreGraphics with Cairo as their Graphics Library CoreNetworks with libcurl and CoreFoundation with CFLite

To build on Cairo you required to append --wincairo to the build command I presume to built Apple one

If you are using "WebKit.exe" from bin then it requires Safari to be installed on the PC and you need to place all the dependent DLL's (besides WebKit.dll and JavascriptCore.dll) at the same location where your executable resides These DLL's can be found in "C:\Program Files\Common Files\Apple\Apple Application Support"

You could also look into two projects "MiniBrowser" and "WinLauncher". WinLauncher is an independent browser which you can use to test out your new build. I assume MiniBrowser too

@Adam Roben
On Apple's Window Port I do get the support for GeoLocation (10/10) for WinLauncher. So currently my browser ranks 224 on the html5 test it's only missing WebGL and MicroData and perhaps a couple of others.Rest is fine

>Date: Wed, 23 Feb 2011 18:01:45 +0000
>From: Nick Guenther <Nick.Guenther at dossierview.com<mailto:Nick.Guenther at dossierview.com>>
>>To: "webkit-help at lists.webkit.org<mailto:webkit-help at lists.webkit.org>" <webkit-help at lists.webkit.org<mailto:webkit-help at lists.webkit.org>>
>>Subject: [webkit-help] Windows port depends on Safari?
>>Message-ID: <BE0A8AEAB3346246A371BF00A559BAB06B6123 at EXCHANGE.dv.local<mailto:BE0A8AEAB3346246A371BF00A559BAB06B6123 at EXCHANGE.dv.local>>
>>Content-Type: text/plain; charset="us-ascii"
>I'm trying to deploy a small app on top of WebKit on Windows 7. I've built it fine, and figured out that I need:
>WebKitBuild\Release\bin\WebKit2WebProcess.exe (I'm using WK2)
>And nothing screams if I leave out the other two DLLs that come with the build (InjectedBundle.dll and QTMovieWin.dll). It runs fine on my dev machine (which has Safari installed) but when I move it it complains "The application cannot start [this is actually a lie, it starts fine it just hits this when it tries to load DLL] because ___.dll is missing" where ___ is one of several things in C:\Program Files (x86)\Common Files\Apple\Apple Application Support.
>Okay, fine, so I copied all the DLLs it wanted in but then, then it says "WebKit.dll". What is going on, is there a circular dependency?
>Is Windows webkit intimately tied to having Safari installed? I'd like to avoid having to install a whole application just to make a library work. How does WebKit even find these DLLs? http://www.nirsoft.net/utils/registered_dll_view.html doesn't list any of them as being known to Windows, is the Common Files\Apple\... path hardcoded somewhere?.
>Any small pointer could be enough for me to figure it out, so thanks in advance for any tips anyone can share,
>-Nick Guenther

Mr. Nimish Nayak
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-help/attachments/20110224/0355d498/attachment.html>

More information about the webkit-help mailing list