wiki:BuildingGtk

Version 59 (modified by levin@chromium.org, 13 years ago) (diff)

Fix formatting of recent change.

Building WebKitGTK+

Dependencies

WebKitGTK+ currently depends on unreleased versions of GLib and libsoup. If you are using Debian, you should be able to get these packages from the experimental repository. If you are using Ubuntu we have set up a PPA with these packages. To use the PPA simply call:

sudo apt-add-repository ppa:martin-james-robinson/webkitgtk

Following is a list of Debian packages necessary for building WebKitGTK+.

  • autoconf
  • automake
  • autotools-dev
  • bison (>= 2.4.1)
  • flex
  • gperf
  • glib-networking
  • gtk-doc-tools
  • libenchant-dev
  • libgail-dev
  • libgeoclue-dev
  • libglib2.0-dev (>= 2.27.4)
  • libgstreamer-plugins-base0.10-dev
  • libgtk2.0-dev (>= 2.10)
  • libicu-dev
  • libjpeg62-dev
  • libpango1.0-dev (>= 1.16)
  • libpng12-dev
  • libsoup2.4-dev (>= 2.33.1.20101209)
  • libsqlite3-dev
  • libtool
  • libxslt-dev
  • libxt-dev

OS X: The code on Mac OS X should built like any Linux distribution, as long as you install the above build dependencies (in addition to an "ordinary build environment" that includes XCode Tools 2.3 or newer). MacPorts users can get the dependencies via:

$ sudo port install webkit-gtk

If you get an error about libjpeg when the build does the configuration step, you may find the following fixes it:

$ export CPPFLAGS="-I/opt/local/include"
$ export LDFLAGS="-L/opt/local/lib"

Additional Debian packages are necessary for running tests; see WebKitGtkLayoutTests.

Getting the source

To get the WebKitGTK+ source, please follow the instructions on the WebKit page. Many WebKit developer also use git to interact with the repository and the WebKit developer tools have strong support for git. http://trac.webkit.org/wiki/UsingGitWithWebKit contains tips for using git with WebKit.

Launching the build

Once you have successfully checked the source out of the repository, simply run:

$ Tools/Scripts/build-webkit --gtk

This will build WebKit in the directory WebKitBuild/Release. Once the build finishes, you can run a simple demo browser by executing:

$ Tools/Scripts/run-launcher --gtk

To build a debug build of WebKitGTK+ (which will contain debugging symbols useful for generating stack traces), you can pass the --debug argument to build-webkit. This will build WebKit in WebKitBuild/Debug and all other scripts should take the --debug argument as well.

$ Tools/Scripts/build-webkit --gtk --debug
$ Tools/Scripts/run-launcher --gtk --debug

To install the WebKit GTK+ library, simply change into the Release directory and issue

$ make install 

The configure script also supports the different features WebKit/GTK+ provide (e.g., SVG filters and animation features, HTML5 Video element support, etc..). Simply issuing

$ ./configure --help

on the command-line should give you a brief overview of what can be configured. Although you can build with these features enabled, it doesn't mean that the functionality is complete, let alone working properly. Feel free to submit a bug at http://bugs.webkit.org if you find something that is not working.