To build the GTK version of NetSurf on a UNIX-like platform (although it has
only been tested on Debian, Ubuntu and FreeBSD), simply run "make" once you
have got the relevent build dependencies installed. Under a Debian-like OS,
this should suffice:
apt-get install libglade2-dev libcurl3-dev libxml2-dev libmng-dev
apt-get install librsvg2-dev lemon re2c
NetSurf requires at minimum GTK 2.8. Earlier versions will not work. It
also depends on Cairo for rendering, but you should have this already with
versions of GTK 2.8 or later.
This will pull in loads of things, like all the GTK dev libraries, the PNG and
JPEG libraries, colour management libraries, zlib, OpenSSL etc that NetSurf
also depends on.
lemon and re2c are the parser and lexer generators used to create NetSurf's CSS
support. If you have trouble finding lemon for your platform, it forms part of
the SQLite distribution, and consists of a single C file and a single runtime
data file, and is trivial to build yourself.
Type "make". Currently, this produces a huge number of warnings, mostly due to
confused signedness. These haven't been fixed yet but are mostly harmless.
Once built, NetSurf can be run by executing the shell script called "netsurf".
This script sets up some environment variables, which enables the NetSurf
binary to find its resources, making it easy to run the nsgtk binary from the
build tree. If you're packaging NetSurf, you can edit the RESPATH macro near
the top of gtk/gtk_gui.c to point at a directory to search, removing much of
the need for this starter shell script.