summaryrefslogtreecommitdiff
path: root/Docs/BUILDING-GTK
blob: db45b4f866745ba1eae057310b3e6ebafc10a061 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
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 gtk" 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 -f Makefile.unix".  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.