diff options
author | Mathieu Lacage <mathieu@src.gnome.org> | 2000-08-11 03:49:07 +0000 |
---|---|---|
committer | Mathieu Lacage <mathieu@src.gnome.org> | 2000-08-11 03:49:07 +0000 |
commit | 3afcd9b8688b41b2a20464a6978f11cbf30c1ffd (patch) | |
tree | 851ae0e4abea9944aea2ce8bd6ef51f5fde52a51 /HACKING | |
parent | 2ac9b4577534a6c0c4319eda894033a75da0b8c8 (diff) | |
download | nautilus-3afcd9b8688b41b2a20464a6978f11cbf30c1ffd.tar.gz |
HACKING: update for upcoming release.
Diffstat (limited to 'HACKING')
-rw-r--r-- | HACKING | 229 |
1 files changed, 131 insertions, 98 deletions
@@ -4,74 +4,28 @@ 0: Table of Contents 1: Intro -2: Module Listing -3: Distribution Specific Notes -4: m4 macro and aclocal issues -5: Issues When Running Nautilus +2: Distribution Specific Notes +3: compiling +4: Issues When Running Nautilus +5: Using the leak checker + ======== 1: Intro ======== To build Nautilus without interfering with an existing Gnome install, -you will need to build several components from CVS into a separate -prefix. - -For example, you could install these components into /usr/local/gnome2 -or /usr/local/nautilus. Do do this, make sure to specify these with -the --prefix= option to autogen.sh or configure. - -Specifically, you will need to: - -* Install all the needed modules into your selected prefix. - -NOTE: more documentation is in docs/ +you will need to build several components either from CVS or from +tarballs into a separate prefix. Detailed instructions on how +to accomplish this are available in section 4. * All patches should go through nautilus-list@lists.eazel.com. -================= -2: Module Listing -================= - -NOTE the development libraries in helix gnome 1.2, are not adequate, -you need the versions from CVS. (as of Wed Jun 14 13:48:35 PDT 2000, -you can use glib, gtk+, imlib, gtk-engine, gnome-xml, gnome-libs from -Helix Gnome ) also modern version of RedHat come with a new popt, - -Nautilus currently requires the following modules from GNOME CVS -(built in the given order): - - module branch configure options dist. - ------ ------ ----------------- ----- - popt: <1.5, but not from GNOME CVS, see below> RH6.2 - glib: glib-1-2 HC1.2 - gtk+: gtk-1-2 HC1.2 - imlib: HEAD HC1.2 - gnome-xml: LIB_XML_1_X HC1.2 - ORBit: orbit-stable-0-5 - gnome-libs: gnome-libs-1-0 --enable-prefer-db1 HC1.2 - gnome-http: HEAD - oaf: HEAD - gconf: HEAD - gdk-pixbuf: HEAD --enable-canvas-pixbuf - gnome-print: GNOME_PRINT_0_20 - control-center control-center-1-0 - gnome-vfs: HEAD --enable-oaf=yes - bonobo: HEAD --enable-oaf=yes - gtkhtml: HEAD - eog: HEAD --enable-oaf=yes - xpdf: HEAD - medusa: HEAD - nautilus: HEAD - -RH6.2 == Version from Red Hat 6.2 OK -HC1.2 == Version from Helix Code Gnome 1.2 OK - ============================= -3: Distribution Specfic Notes +2: Distribution Specific Notes ============================= -Other libraries needed: +Basic libraries needed: Here is what has been tested You will also need the library package that is associated with each development package, @@ -110,56 +64,135 @@ If you need to get a copy of popt from source: CVSROOT=:pserver:anonymous@cvs.rpm.org:/cvs/devel The default passwd is a carriage return. You should do a cvs co popt -============================== -4: m4 macro and aclocal issues -============================== - -m4 macros have issues. Trying to install multiple versions of them on you system can be very tricky. -While building these libraries you will place following m4 macros into "your prefix"/share/aclocal -directory. Note you will generally get errors with -I - - glib.m4 - gtk.m4 - imlib.m4 - libIDL.m4 - ORBit.m4 - libart.m4 - gnet.m4 - oaf.m4 - gconf.m4 - gdk-pixbuf.m4 - -One ugly but functional way to make this work is to symlink your system m4 files into your -First you need to make the directory where they will live. - - mkdir -p "your prefix"/share/aclocal - -Then you need to link all the m4 files from your system aclocal directory to the new one. - - for file in `ls /usr/share/alocal/*m4` - do - ln -s $file "your prefix"/share/aclocal/ - done - -Then you want to remove the m4 file for any of the things you are building. - - for link in glib.m4 gtk.m4 imlib.m4 libIDL.m4 ORBit.m4\ - libart.m4 gnet.m4 oaf.m4 gconf.m4 gdk-pixbuf.m4 - do - rm "your prefix"/$link - done - -* Build and install nautilus into your selected prefix. +============ +3: compiling +============ + +First, make sure you have installed the packages detailed below. If you are running +GNOME from binaries (HelixCode or your native distribution binaries), please make sure +you have installed the corresponding developement packages. (ie: the *-devel packages +which provide the necessary C header files. + +Then, make sure you have no old version of the packages nautilus depends on on your +system. You can check the version of the relevant packages by trying to execute +"package-config --version" (ie: gnome-config --version will report gnome-libs version, +gconf-config --version will report gconf's version). + + + Compiling from tarballs. + ------------------------ +If you are compiling from tarballs, (ie: using released versions of nautilus and the +relevant packages), you want to folow the instructions below. + +The folowing lists the packages and the versions they should report. + + module version configure options dist. + ------ ------ ----------------- ----- + popt: <1.5, but not from GNOME CVS, see below> RH6.2 + glib: 1.2.8 HC1.2 + gtk+: 1.2.8 HC1.2 + imlib: 1.9.8.1 HC1.2 + gnome-xml: 1.8.1 HC1.2 + ORBit: 0.5.3 HC1.2 + gnome-libs: 1.2.4 --enable-prefer-db1 HC1.2 + gnome-http: 1.0.6 + oaf: 0.5.0 + gconf: 0.8 + gdk-pixbuf: 0.8.0 --enable-canvas-pixbuf + gnome-print: 0.20.0 + control-center 1.2.0 + gnome-vfs: HEAD + bonobo: 0.17 + gtkhtml: 0.6 + eog: 0.3 --with-bonobo + medusa: 0.2 + nautilus: 0.1 + +RH6.2 == Version from Red Hat 6.2 OK +HC1.2 == Version from Helix Code Gnome 1.2 OK + +If you are running HelixCode's GNOME, you should be able not to recompile the +"HC1.2" packages provided you have installed the relevant development packages. + +We will assume you want to install these packages in another prefix than /usr +since you want to keep a working system. We will assume in the folowing that +you install in /usr/local. ie: ${prefix}=/usr/local + +Redefine you PATH env variable: + export PATH=$PATH:${prefix}/bin +Redefine your LD_LIBRARY_PATH env variable: + export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:${prefix}/lib +Redefine your GNOME_PATH env variable: + export GNOME_PATH=$GNOME_PATH:${prefix} + +In the order defined above and with the specific options detailed above, +you should run the configure scripts with: "./configure --prefix=${prefix} --special-options" +Then, run make; get root and run make install. + +you should get a running nautilus soon then :) + + Compiling from cvs. + ------------------- +Compiling from cvs usually requires more work and some packages may not +compile... Do so at your own risk!! + +The folowing lists the packages and the versions they should report. + + module branch configure options dist. + ------ ------ ----------------- ----- + popt: <1.5, but not from GNOME CVS, see below> RH6.2 + glib: glib-1-2 HC1.2 + gtk+: gtk-1-2 HC1.2 + imlib: HEAD HC1.2 + gnome-xml: LIB_XML_1_X HC1.2 + ORBit: orbit-stable-0-5 HC1.2 + gnome-libs: gnome-libs-1-0 --enable-prefer-db1 HC1.2 + gnome-http: HEAD + oaf: HEAD + gconf: HEAD + gdk-pixbuf: HEAD --enable-canvas-pixbuf + gnome-print: GNOME_PRINT_0_20 + control-center control-center-1-0 + gnome-vfs: HEAD + bonobo: HEAD + gtkhtml: HEAD + eog: HEAD --with-bonobo + xpdf: HEAD + medusa: HEAD + nautilus: HEAD + +RH6.2 == Version from Red Hat 6.2 OK +HC1.2 == Version from Helix Code Gnome 1.2 OK + +The main difference between tarball and cvs compilation is that when you get stuff from cvs, +you don't get a configure script. This script has to be generated. +This script is usually generated with the help of another script available from cvs named +"autogen.sh". For those interested, "autogen.sh" will run in turn aclocal, automake, autoconf +and configure. You thus need versions of the GNU tools for the folowing packages: + package version command + ------- ------- ------- + automake 1.4 automake --version + autoconf 2.13 autoconf --version + +Earlier versions might work but no one has tested them. + +Once you have these tools, you need to folow the compilation instructions detailed above for +tarballs but instead of running "./configure --stuff", you will run "./autogen.sh --stuff" +Using this also requires you to create the ${prefix}/share/aclocal directory before compiling +any package and setup the folowing env variable: + export ACLOCAL_FLAGS="$ACLOCAL_FLAGS -I ${prefix}/share/aclocal" + +This should be be all. =============================== -5: Issues When Running Nautilus +4: Issues When Running Nautilus =============================== Also, you need to do a "killall oafd; killall gconfd" before running Nautilus if OAF or GConf changed. =============================== -6: Using the leak checker +5: Using the leak checker =============================== Nautilus is set up to use the libleakcheck.so leak checking libary. To |