[webkit-dev] Linker error with cairo build on Windows

Vijay D techvd at gmail.com
Fri Jan 9 16:49:38 PST 2009


Thanks a lot Brent! That fixed the build problem for me, although I'm having
trouble running it with WinLauncher (I will look more into this later). Now
I'm trying Release build and its giving these errors with WebKit.dll:

5>WebKit_Cairo.def : error LNK2001: unresolved external symbol
SetWebLocalizedStringMainBundle
5>WebKit_Cairo.def : error LNK2001: unresolved external symbol
WebLocalizedLPCTSTR
5>WebKit_Cairo.def : error LNK2001: unresolved external symbol
WebLocalizedLPCTSTRUTF8
5>WebKit_Cairo.def : error LNK2001: unresolved external symbol
WebLocalizedString
5>WebKit_Cairo.def : error LNK2001: unresolved external symbol
WebLocalizedStringUTF8

I also have a few more follow up questions, if possible.

* The cairo build seems to be pretty complete now. I have seen many people
on the forum having success with it. Do you have an idea when it might be
merged onto trunk?
* For the patch I used, I had to add a couple more #ifdef SAFARI_INTERFACE
conditionals in the WebPreferences.cpp but I think that's because the patch
is a few days older.
* This is slightly unrelated but the WebKit.dll I build seems to be too big
(40MB+). It doesn't seem to matter much whether it is release or debug
build. Could it be because of the SVG features? I'm not sure.

Thanks,
Vijay

On Fri, Jan 9, 2009 at 11:02 AM, Brent Fulgham <bfulgham at gmail.com> wrote:

> Hi,
>
> On Fri, Jan 9, 2009 at 1:30 AM, Vijay D <techvd at gmail.com> wrote:
> > I'm trying a cairo build on Windows. After struggling with a few settings
> > and errors, I was finally able to build most of everything cleanly from
> > command-line. In the end WebKit.dll fails with an error:
> >
> > 11>WebMutableURLRequest.obj : error LNK2019: unresolved external symbol
> > "public: struct _CFURLRequest const * __thiscall
> > WebCore::ResourceRequest::cfURLRequest(void)const "
> > (?cfURLRequest at ResourceRequest@WebCore@@QBEPBU_CFURLRequest@@XZ)
> referenced
> > in function "public: virtual struct _CFURLRequest const * __stdcall
> > WebMutableURLRequest::cfRequest(void)"
> > (?cfRequest at WebMutableURLRequest@@UAGPBU_CFURLRequest@@XZ)
> > 11>D:\WebKit\WebKitBuild\bin\WebKit.dll : fatal error LNK1120: 1
> unresolved
> > externals
>
> There is no CFURLRequest object in the Cairo build, so it looks like
> we've somehow got a bit of CFNetwork stuff creeping into the build.
>
> The WebCore/platform/network/curl/ResourceRequest.h defines a stub of
> cfURLRequest that should be supplying this implementation.  It looks
> as though the WebCore/platform/network/cf/ResourceRequest.h is
> actually getting used in your build.
>
> I think the problem is that sometimes the post-build target doesn't
> copy the ResourceRequest.h from the curl subdirectory, and you get
> into this state.
>
> For now, just copy the ResourceRequest.h (and perhaps the
> ResourceResponse.h for good measure) from the
> WebCore/platform/network/curl directory to your
> $(WebKitBuild)/include/WebCore directory and you should be able to
> rebuild just the WebKit.dll and it will link.
>
> Perhaps the copy is not working right; I'll take a look at it and see
> if something needs correcting.
>
> Thanks,
>
> -Brent
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-dev/attachments/20090109/61da81d7/attachment.html>


More information about the webkit-dev mailing list