Installation
- 4.1. Build Order
- 4.2. Parallel Install
- 4.3. GARNOME
- 4.4. GNOME Installation Guide
- 4.5. Upgrading from GNOME 1.4
- 4.6. Platforms
- 4.7. System Requirements
4.1. Build Order
The packages should be built in the following order:
- libxml2
- libxslt
- intltool
- scrollkeeper
- pkgconfig
- audiofile
- esound
- gtk-doc
- glib
- linc
- atk
- gnome-common
- pango
- libIDL
- ORBit2
- bonobo-activation
- gtk+
- GConf
- libart_lgpl
- libzvt
- libbonobo
- gnome-mime-data
- gnome-vfs
- libglade
- libgnome
- libgnomecanvas
- libbonoboui
- libgnomeui
- libwnck
- libgnomeprint
- libgnomeprintui
- libgtop
- librsvg
- gail
- eel
- libgtkhtml
- gtk-engines
- gnome-desktop
- gnome-panel
- gnome-session
- gnome-terminal
- gnome-utils
- gnome-applets
- control-center
- gnome-games
- bug-buddy
- eog
- nautilus
- gnome-system-monitor
- yelp
- gedit
- librep
- rep-gtk
- sawfish
- gnome-media
- gdm
- at-spi
- libgail-gnome
- gconf-editor
- gnome2-user-docs
It is possible to build all these packages in a different location from the default /usr/local (by passing the
--prefix= location
4.2. Parallel Install
GNOME 2.0.2 may be installed in parallel with the GNOME 1.4.1 release libraries, allowing you to use GNOME 2.0.2's primary desktop functions - panels, Nautilus, etc. - while also running applications that have not yet been ported and therefore still require GNOME 1.4 libraries.
For some GNOME 1.x apps, you need the GNOME 1.x control-center (eg: gnome-pilot for use in Evolution).
4.3. GARNOME
GARNOME builds GNOME 2.0.2 from released tarballs. It is maintained by Jeff Waugh, the GNOME 2 release coordinator, and can be found here.
4.5. Upgrading from GNOME 1.4
After building and/or installing all of the packages successfully, there are a couple of things that need to be done start using the latest release.
Ensure that any existing GNOME 1.x sessions have been exited and check that GConfd has stopped (run ps ax | grep [g]conf). If gconf is still running, execute the command gconftool-1 --shutdown to stop it.
In order to have anti-aliased fonts in menus and applications, you will need to make sure that the environment variable GDK_USE_XFT is exported before running the appropriate applications, enabling rendering to use GNOME 2's new font architecture. For example, you might put the following in $HOME/.gnomerc:
export GDK_USE_XFT=1 exec gnome-session
With this set, fonts will then be rendered according to the configuration of /etc/X11/XftConfig (moving to /etc/fonts/fonts.conf in a future version, as we move to fontconfig instead of Xft1). Settings in XftConfig or fonts.conf determine how fonts are rendered, including whether to use hinting and antialiasing.
There have been cases of the initial login to GNOME 2 not going quite smoothly and a lot of errors about CORBA connections not being completed popping up in error boxes (and nothing else starting). This can be probably fixed by stopping the session (returning to the gdm screen or to the command prompt) and then (in a terminal) removing the /tmp/orbit-user directory (and all of its contents), where user is replaced with the appropriate user's login name.
4.6. Platforms
4.6.2. Solaris
Notes about building on Solaris.
The following packages above and beyond those found on a complete Solaris system are needed:
- gettext 0.10.40
- popt 1.6.2
- freetype >= 2.0.2
- libaudiofile >= 0.2.3
- sox >= 12.17.3
- jpeg v6b
- libpng 1.0.12
- tiff 3.55
- scrollkeeper 0.3.10
- ghostscript 6.53
In addition, you need a compiler, either gcc or Forte 6 update 2. Older versions of forte/Sunpro have been known to cause problems.
There are a number of patches recommended for building GNOME on Solaris, which can be obtained from http://sunsolve.Sun.COM/pub-cgi/show.pl?target=patches/patch-access:
* Solaris8/sparc: 108528-14 108827-20 108989-02 110934-07 111293-04 112396-02 108652-51 108987-09 110380-04 111111-03 111310-01 112438-01 * Solaris8/x86: 108529-14 108828-22 108990-02 110935-07 111294-03 111311-01 112439-01 108653-41 108988-09 110403-04 111112-03 111307-03 112397-02
If you are using the native iconv implementation on Solaris instead of libiconv, you'll need to make sure that you have the converters between locale encodings and UTF-8 installed. At a minimum you'll need the SUNWuiu8 package. You probably should also install the SUNWciu8, SUNWhiu8, SUNWjiu8, and SUNWkiu8 packages.
4.6.3. Darwin
With the latest releases, the GTK family builds cleanly out of the box. More work is needed to get GNOME running, however. A gnome-darwin-list has been set up for those interested in working on issue.
4.6.4. GNU/Linux
Building GNOME 2.0.2 on GNU/Linux requires a number of standard packages included with most distributions. Below are listings of the packages as they are named in several of the most common distributions.
4.6.4.1. Debian
- libpng2-dev
- libjpeg-dev
- libtiff-dev
- xlibs-dev
- libpopt-dev
- libgdbmg1-dev (librep)
- libgmp3-dev (librep)
- texinfo (librep)
- libbz2-dev, zlib1g-dev (gnome-vfs, others)
- python2.2 + python2.2-xml (libglade)
- docbook-xml (Docbook DTD 4.1.2) + docbook-xsl (Docbook XSL Stylesheets)
4.6.4.2. Red Hat
All of the following packages are required for a full build. Most should be installed by default and all will be available from the distribution itself. Alternatively, www.rpmfind.net is a good place to find the appropriate packages. I have used the “official” Red Hat names for each one. This is taken from a Red Hat 7.3 box, so it should be the same names across all Red Hat 7.x boxes and there are possibly some small changes on the 6.x boxes (plus some version problems on those boxes, too).
- gcc
- make
- glibc-devel
- libpng
- libpng-devel
- libjpeg
- libjpeg-devel
- libtiff
- libtiff-devel
- XFree86
-
XFree86-devel
Plus whatever XFree86 packages are required for the system to run.
- freetype
- freetype-devel
- popt
- gdbm
- gdbm-devel
- gmp
-
gmp-devel
This is the GNU multi-precision library, not libgpm, the mouse library.
- texinfo
- bzip2
- bzip2-libs
- bzip2-devel
- zlib
- zlib-devel
- gettext
- byacc or bison
- flex
-
python >= 2.0 with expat support
This means you need to be able to start python, it has to be version 2.0 or greater and “from xml.parsers import expat” must work from the Python prompt. In other words, running python2 -c "from xml.parsers import expat" from a shell prompt and having no error reported is sufficient.
- openjade
- sgml-common
- docbook-dtds
- xml-common
- docbook-style-xsl
- docbook-style-dsssl
4.6.4.3. Mandrake
GNOME 2 binary packages are available in Mandrake Cooker (Mandrake's experimental / unstable) distribution).
These packages haven't yet been customized to fully integrate in Mandrake Linux (all available applications are not show in menu, some features available in Mandrake version of GNOME 1.4 have not been ported yet to GNOME 2).
All of the following packages are required for a full Mandrake build. Most should be installed by default and all will be available from the distribution itself. Packages are from Mandrake Linux 8.2. (Hint : use urpmi my_package to install my_package)
- gcc
- make
- glibc-devel
- libpng3
- libpng3-devel
- libjpeg62
- libjpeg62-devel
- libtiff3-devel
- libtiff3-devel
- XFree86
- XFree86-devel (Plus whatever XFree86 packages are required for the system to run.)
- freetype2
- freetype2-devel
- popt
- libgdbm2
- libgdbm2-devel
- libgmp3
- libgmp3-devel (This is the GNU multi-precision library, not libgpm, the mouse library.)
- texinfo
- bzip2
- libbzip2_1
- libbzip2_1-devel
- zlib1
- zlib1-devel
- gettext
- byacc or bison
- flex
- python >= 2.0 with expat support. This means you need to be able to start python, it has to be version 2.0 or greater and “from xml.parsers import expat” must work from the Python prompt. In other words, running python2 -c "from xml.parsers import expat" from a shell prompt and having no error reported is sufficient.
- openjade
- sgml-common
- docbook-dtd41-sgml
- docbook-dtd412-xml
- docbook-style-xsl
- docbook-style-dsssl
4.7. System Requirements
As discussed Section 2.3 ― Performance, GNOME 2 requires less resources than GNOME 1.4. We recommend a P400 or equivalent with 128M RAM for using the desktop, but it has been known to work on a system with as little as a P166 with 64M RAM.