Introduction to WebKitGTK+
The WebKitGTK+ is the port of the
portable web rendering engine WebKit to the GTK+
3 and GTK+ 2 platforms.
This package is known to build and work properly using an LFS-7.10
platform.
Package Information
-
Download (HTTP): http://webkitgtk.org/releases/webkitgtk-2.4.11.tar.xz
-
Download MD5 sum: 24a25ccc30a7914ae50922aedf24b7bc
-
Download size: 9.5 MB
-
Estimated disk space required: 1.5 GB (both built)
-
Estimated build time: 80 SBU (using parallelism=4, both
built, webkitgtk-3.0 takes a little longer than
webkitgtk-1.0)
Additional Downloads
WebKitGTK+ Dependencies
Required
gst-plugins-base-1.8.3, GTK+-3.20.9 or
GTK+-2.24.30 or both, ICU-57.1, libgudev-230, libsecret-0.18.5, libsoup-2.54.1, libwebp-0.5.1,
Mesa-12.0.1, Ruby-2.3.1, SQLite-3.14.1 and Which-2.21
Note
Note that WebKit2 links against GTK+
2 (even if GTK+ 3 is
being used) in order to be able to use NPAPI plugins such as
Adobe Flash.
Recommended
enchant-1.6.0, GeoClue-2.4.3
or GeoClue-0.12.0, gobject-introspection-1.48.0 and
hicolor-icon-theme-0.15
Optional
GTK-Doc-1.25, LLVM-3.8.1 and
MathML
User Notes: http://wiki.linuxfromscratch.org/blfs/wiki/webkitgtk
Installation of WebKitGTK+
If you have not installed GTK-Doc-1.25,
fix a bug that will cause make
install to fail:
sed -i '/generate-gtkdoc --rebase/s:^:# :' GNUmakefile.in
Fix a couple of compiler issues when built with GCC-6.1:
patch -Np1 -i ../webkitgtk-2.4.11-gcc6-1.patch
Note
Unless noted otherwise, the packages depending on this package
expect it to be built against GTK+
3.
To build WebKitGTK+ against
GTK+ 3, run the following
commands:
mkdir build3 &&
pushd build3 &&
CFLAGS="-fno-delete-null-pointer-checks" \
CXXFLAGS="-fno-delete-null-pointer-checks" \
../configure --prefix=/usr --enable-introspection &&
make &&
popd
To build WebKitGTK+ against
GTK+ 2, run the following
commands:
mkdir build2 &&
pushd build2 &&
CFLAGS="-fno-delete-null-pointer-checks" \
CXXFLAGS="-fno-delete-null-pointer-checks" \
../configure --prefix=/usr --with-gtk=2.0 --disable-webkit2 &&
make &&
popd
This package does not have a working testsuite. However, there are
two useable basic graphical web browsers in the build directory,
Programs/GtkLauncher and
Programs/MiniBrowser. If launching
any one fails, there is a problem with the build.
If you have built the package against GTK+ 3, install it by running the following
commands as the root
user:
make -C build3 install &&
rm -rf /usr/share/gtk-doc/html/webkit{,dom}gtk-3.0 &&
if [ -e /usr/share/gtk-doc/html/webkitdomgtk ]; then
mv -v /usr/share/gtk-doc/html/webkitdomgtk{,-3.0}
fi
if [ -e /usr/share/gtk-doc/html/webkitgtk ]; then
mv -v /usr/share/gtk-doc/html/webkitgtk{,-3.0}
fi
If you have built the package against GTK+ 2, install it by running the following
commands as the root
user:
make -C build2 install &&
rm -rf /usr/share/gtk-doc/html/webkit{,dom}gtk-1.0 &&
if [ -e /usr/share/gtk-doc/html/webkitdomgtk ]; then
mv -v /usr/share/gtk-doc/html/webkitdomgtk{,-1.0}
fi
if [ -e /usr/share/gtk-doc/html/webkitgtk ]; then
mv -v /usr/share/gtk-doc/html/webkitgtk{,-1.0}
fi
Command Explanations
--enable-introspection
:
This switch enables Gobject
Introspection bindings and is required if building
GNOME Desktop. Remove if you don't
have Gobject Introspection
installed or you don't want to install GNOME. It is not needed if building against
GTK+ 2, although it can be used if
desired.
--with-gtk=2.0
--disable-webkit2
: These switches force WebKitGTK+ to compile against GTK+ 2, even if GTK+
3 is also installed.
--disable-geolocation
: Use this switch
if you don't want to install GeoClue-0.12.0 or GeoClue-2.4.3.
--enable-gtk-doc
: Use this parameter if
GTK-Doc is installed and you wish
to rebuild and install the API documentation.