What should I Do Before Starting the GNOME Compilation?

At first naturally you must have installed the normal GNU compile-environment (gcc, libraries,autoconf,automake etc.). [ But normally you will already have installed it ;-) ]. In addition there must be some common libraries, which you have to get by your distribution. Normally you have already installed them too. Perhaps I should mention explicitely «popt»: a library by which an application is able to parse the commandline arguments. For getting the documentation it would be very useful to have installed the doctools, sgtmltools and the tool db2html. At least you should have installed «Python» and «Perl». The other cases will be named by the configure scripts of the gnome applications. (For example: sometimes people will be reminded to install zlib and libpng). If you follow the steps given by the installation table you can be sure that missed libraries aren't GNOME specific libraries.

The really most important preparation is the erasure of all already installed (rpm,deb) packages which belong to the GNOME and the GTK project. This is very important for not having two versions of the same library at different places. If you are installing a GNOME tarball and the configure script can't find the right version of a library (which normally is denoted by a config-scripts like gtk-config) although you just have installed that demanded library, then the configure script very often finds another version at another place. Note: GIMP bases on GTK and therefore must be erased too. [ No panic, you will get it back ;-) ] The general rule is: delete all those packages by using your redhat (or debian) package manager which contain applications or libraries being mentioned in the GIG installation table.

It is a good idea to have one special installation-point for all gnome/gtk tarballs. Very often this is «/opt/gnome». But you can also select «/usr/local/gnome» or «/usr/local/gnu/gnome». It's not a good idea to merge the manually installed tarballs with other packages, because you may want to give your manually created full GNOME installation to other persons who shouldn't do more than these preparations.

When you have choosen your installation-point this place must be made known to your GNU/Linux system. Inside of the documents we will assume that $INSTPATH refers to your special installation-point. In the tables we uses the abbreviation $INSTPATH for $INSTPATH. For my system $INSTPATH has to be read as «/opt/gnome». Ok, without reading the signs « and » as signs which you have to insert into the named files you now make your installation-point known by doing this:

  1. Expand your file «ld.so.conf» (often located under /etc) by the line «$INSTPATH/lib»
  2. Expand your environmentvariable «PATH» by the string «$INSTPATH/bin». You can do it locally (inside of your .bashrc) or generally (inside of your general profile-file).
  3. Expand your MANPATH-Variable by the string «$INSTPATH/man». You can do it locally (inside of your «.bashrc») or generally (inside of your general profile-file).

Now you must logout yourself and relogin for informing your session about this changings. (Naturally you can realize it manually too). And at last you should login as root (su -) and should execute «ldconfig» for making the new librarypath known to your linker.

Last but not least we wan't to offer a workaround for a specific problem (thanks to Volodymyr Babin): While stepping into GNOME 1.4 probably there has been a changement inside of «gtk-config» and «gnome-config»: none of them return also «$INSTPATH/include» as reaction of the parameter «--cflags». But some tarballs expect to get the top-include directory of the GNOME installation path (denoted by $INSTPATH/include in this GNOME Installation Guide). (This problem for example concerns bluefish 0.6). There exist a more general workround for solving that problem: type «export CFLAGS="${CFLAGS} -I$INSTPATH/include"» and «export CXXFLAGS="${CXXFLAGS} -I$INSTPATH/include"» before calling «configure --prefix=$INSTPATH» of the default installation procedure

© Karsten Reincke, Osnabrück (Germany) 2000/2001/2002.