[webkit-gtk] Bug 32985: Changes for building webkit/gtk/win32

Josip josip at pisoj.com
Tue Dec 29 12:06:46 PST 2009

On 29.12.2009 15:39, Phil Longstaff wrote:
> Please direct all e-mails to the list.
> Yes, I'm working on webkit/gtk for win32.  If you want a version that
> basically works, look at
> http://sourceforge.net/projects/gnucash/files/gnucash (unstable)/Win32
> Build Dependencies/webkit-1.1.5-win32.zip which is a version I got from
> the net a few months ago.  There could easily be lots of problems with
> it, but I have been using basic functionality.  Two known problems: 1)
> loading images using file:// doesn't work.  This may be a mime-type
> problem (see the webkit-gtk mailing list archives). 2) If I try to
> print, the font is *really* small, as though it takes 10pt and prints
> 10px.
> I starting trying to build using mingw on winXP.  I then switched to
> fedora 11 running in a VM, since fedora 11 has some pre-built mingw
> packages.  Some packages are not yet at the right version required by
> webkit, and fedora 12 has some newer packages, so I updated some
> packages and disabled some version checks.
> I was able to build successfully.  However, when I try to run the unit
> tests, they all fail (I get a dialog pop-up stating that the threading
> library has not been initialized, even though the first line in the unit
> test is a call to g_thread_init()).
> I am now trying to reproduce my build back on mingw on winXP.
> Phil
> On Tue, 2009-12-29 at 11:31 +0300, halaiwa wrote:
>> Hello Phil,
>> Sorry for bothering you, but I see that you are working on webkit/gtk
>> port on win32. I am also trying to build this port however the puzzler
>> still is not solved, moreover I do not feel like I am going in right
>> direction. Could you, please, point me out what compiler and libraries
>> you are using for this port.
>> Thanks in advance!
>> Best regards,
>> halaiwa
>> 28.12.09, 10:07, "Phil Longstaff"<plongstaff at rogers.com>:
>>          I have submitted bug 32985 which contains some changes I
>>          needed in order to build webkit/gtk on win32.  It is not all
>>          of my changes, but it does contain the (I hope) most
>>          straightforward changes.
>>          I have not included changelog entries.  Should I create the
>>          patch files so that each one patches 1) a file, and 2) a
>>          ChangeLog file?
>>          I also have some questions about some GNUmakefile.am changes.
>>          I needed to add -lwinmm to a number of lines (producing
>>          libwebkit and a number of the executables).  These would not
>>          normally be needed by a gtk build, but I'm surprised they are
>>          not needed by the webkit/win32 build.
>>          I also needed to add -lgthread-2.0 to a number of lines
>>          (producing libwebkit and a number of executables).  I am
>>          surprised this file was not included in GTK_LIBS.  For win32,
>>          I can add "if TARGET_WIN32"/"endif" around the extra link
>>          arguments, but didn't see any examples of how to specify a GTK
>>          target.
>>          I have more changes, mostly where I added "#if 0"/"#endif" to
>>          get rid of stuff to make it build.  I need to fix those areas,
>>          so I will be adding more patches.  So far, I have 1 patch per
>>          file.
>>          Phil

Hi Phil,
i never try to build WebKitGtk from Windows but crosscompile win32 
version from Linux (ArchLinux 64bit) some time ago.
Just made some makefiles changes to prevent use of $(SYMBOL_VISIBILITY)
as for "-lwinmm" i include it as configure options in this script:

export PKG_CONFIG_PATH="${HOME}/mingw32/lib/pkgconfig"
export CPPFLAGS="-I${HOME}/mingw32/include 
-I${HOME}/mingw32/include/pthread `pkg-config glib-2.0 --cflags` 
export LDFLAGS="-L${HOME}/mingw32/lib"
export LIBS="-luser32 -lshlwapi -lwinmm -lglib-2.0"
export CFLAGS="-O3 -mms-bitfields -march=i686 -mtune=generic 
-fomit-frame-pointer -pipe"
export CFLAGS="${CFLAGS} -std=c99"
mkdir -p WebKitBuild/Release4win && cd WebKitBuild/Release4win
../../configure \
     --prefix=${HOME}/webkit4win \
     --host=i486-mingw32 \
     --with-target=win32 \
     --enable-3D-transforms \
     --enable-web-sockets \
     --enable-filters \
make -j 3
make install

Not all things works fine although it passes all 15 unittests.
As i need those for some python application i put result on their wiki 

both webkitgtk (no install, bundle of webkit + dependencies from 1.1.16 
svn) and pywebkitgtk (1.1.7)


More information about the webkit-gtk mailing list