summaryrefslogtreecommitdiff
path: root/Docs/BUILDING-GTK
blob: 525fa9ac51980594322a684f05d74d3c4313b92c (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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
--------------------------------------------------------------------------------
  Bulid Instructions for GTK NetSurf                             21 March 2008
--------------------------------------------------------------------------------

  To build GTK NetSurf on a UNIX-like platform, provided you have the relevant
  build dependencies installed, simply run:

      $ make

  Once built, NetSurf can be run by executing the 'netsurf' shell script:

      $ ./netsurf

  This script makes it easy to run the nsgtk binary from the build tree. It
  sets up some environment variables which enable NetSurf to find its
  resources.

  Tested on Debian, Ubuntu, Fedora 8, FreeBSD, NetBSD and Solaris 10.

  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 (and the security implications it has).


  Obtaining NetSurf's dependencies
==================================

  Assuming you have GCC and GNU Make etc installed install the dependencies
  for your system. Instructions for specific systems are below:

  Debian-like OS:

      $ apt-get install libglade2-dev libcurl3-dev libxml2-dev libmng-dev 
      $ apt-get install librsvg2-dev lemon re2c

  Fedora:

      $ yum install libglade2-devel curl-devel libxml2-devel libmng-devel
      $ yum install librsvg2-devel lcms-devel re2c

  If your distribution does not package 'lemon' (Fedora doesn't) then you'll
  need to download it and build it yourself. You may find it comes with the
  SQLite packages (SQLite's parser is built with lemon). If not, try this:

      $ mkdir -p /usr/local/share/lemon
      $ wget http://www.sqlite.org/cvstrac/getfile/sqlite/tool/lemon.c
      $ wget -O /usr/local/share/lemon/lempar.c http://www.sqlite.org/cvstrac/getfile/sqlite/tool/lempar.c
      $ sed -e's!lempar.c!/usr/local/share/lemon/lempar.c!' lemon.c > lem.c
      $ gcc -o /usr/local/bin/lemon lem.c

  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.