[webkit-dev] Building Chromium port of WebKit on Windows

Mikhail Naganov mnaganov at chromium.org
Thu Aug 25 06:45:20 PDT 2011


Hello Chromium port maintainers,

In order to figure out why my patch was failing to compile on the
Chromium WebKit bot, I went a long way of compiling the port on my
machine. And it was a tough experience! As for the instructions on on
how to do the build, I could only refer to this page:
http://trac.webkit.org/wiki/Chromium and bot logs. And they were not
enough for me, so I would like to ask you some questions, as that
might be helpful for other people trying to build this port.

- it looks like VS2008 is required to build the Chromium port (as for
Chromium itself), while building plain WebKit requires VS2005
(according to http://www.webkit.org/building/tools.html). Does that
mean it's impossible to use a single checkout of WebKit for building
both?

- from bot logs, it looks like 'update-webkit' and 'build-webkit'
scripts are launched under Strawberry Perl, not from cygwin, as all
paths are of MS-DOS style. I tried this way, and it didn't worked at
all. E.g. for some reason it couldn't find Python, although I have it
in path;

- then I followed instructions from
http://trac.webkit.org/wiki/Chromium and ran those scripts under
cygwin. It almost worked, except for the issues below:
  - ffmpeg.rules, libjpeg.rules and webcore_bindings_sources.rules
were expected to be found in project directories, while actually they
were generated into Source\WebKit\chromium;
  - several Python scripts (from Source\WebCore\WebCore.gyp\scripts)
were receiving MS-DOS paths for output, which were becoming incorrect
after applying os.path.abspath to them (under cygwin, the function was
just prefixing paths with '/cygdrive/c/...');
  - also it looks like several output paths were of MS-DOS style,
because I've found generated files under paths like
'C?/src/WebKit/...', and was needed to copy them to their designated
locations;
  - and vice versa, in generated .rc files there were cygwin-style
paths to resources, resulting in a failure for Visual Studio's
resources compiler to find them;
  - and, as I was building the port with VS2005, I've encountered some
compilation and linking problems mostly fixable by installing
hotfixes.

I have tried to do the build on two machines, so I hope this isn't a
problem of a particular system configuration. But the bot works fine,
and this makes me think that perhaps I was doing something wrong or
missing some important steps.


More information about the webkit-dev mailing list