
   G L I T C H   B U I L D   N O T E S

   For Glitch Version 1.0


Glitch has been developed in a cross-platform manner, with the aid of
Trolltech's Qt, though only UNIX variants are currently supported.
Testing was performed on the following operating systems:

    * Mac OS X 10.3.2 (Panther)
    * SuSE Linux 8.2
    * SuSE Linux 9.0
    * RedHat Linux 9.0

Also, testing was performed purely with the GNU C++ compiler.


SYSTEM REQUIREMENTS:

    Macintosh:
      * Mac OS X
      * G4 450MHz processor or above
      * 128MB RAM
      * OpenGL implementation
          (hardware or software - hardware *STRONGLY* recommended)

    Linux on x86:
      * Kernel 2.4 (2.6 NOT tested)
      * XFree86 4.x
      * Pentium 3 500MHz processor or above
      * 128MB RAM
      * OpenGL implementation
          (hardware or software - hardware *STRONGLY* recommended)



BUILD REQUIREMENTS:

    * Trolltech Qt 3.2 (#)
    * Perl 5.x (##)

    #:  To check the version of Qt that you are running (if you are at all),
        type: `qmake --version' in a terminal. Look for `(Qt X.Y.Z)', where
        X.Y.Z is the version number of Qt (e.g. 3.2.1).
    ##: To check the version of Perl that you are running (if you are at all),
        type: `perl --version' in a terminal. Look for `This is perl, vX.Y.Z',
        where X.Y.Z is the version number of Perl (e.g. 5.8.1).



PROGRAM BUILD PROCEDURE:

To build Glitch, start a terminal / console, change into Glitch's directory,
then type:

    qmake
	
NOTE: Glitch is configured by default to `strip' the compiled target on systems
      that have it installed. Though if you wish, you can disable this behavior
      by specifying `strip-target=false' to qmake, for example:

          qmake strip-target=false

      If you have already run qmake, then run "make clean" first.

Now compile Glitch by typing:

    make

This should now build Glitch, which will create an executable called "glitch".
To run Glitch, simply call it by typing:

    ./glitch

Enjoy!



DEVELOPER DOCUMENTATION BUILD PROCEDURE:

To create Glitch's HTML developer documentation, change into Glitch's directory,
then type:

    doxygen

NOTE: you will need to have Doxygen installed.



PROCEDURE FOR A BUILD USING A STATIC QT LIBRARY:

NOTE: Please read the following instructions carefully.
First you will need to re-build Qt, as to produce a suitable static library.
To do this, unpack the Qt sources into a temporary directory, then change into
the Qt source directory.

    * On Mac OS X type:

        ./configure -static -qt-zlib -qt-libpng


    * On Linux type (assuming that libGL.so is threaded, remove `-thread' otherwise):

        ./configure -static -thread -qt-zlib -qt-libpng -no-sm -no-xinerama -no-xcursor -no-xrandr

      or, the more failsafe option:

        ./configure -static -thread -qt-zlib -qt-libpng -no-sm -no-xinerama -no-xcursor -no-xrandr -no-xrender -no-xft


Once configured, type:

    make

Now we need to install the Qt library, so type:

    make install
	
NOTE: the previous step can be skipped, just as long as you copy the static
library to a known location, for example:

    * On Mac OS X type:

        mkdir ~/qt-static
        cp lib/libqt.a ~/qt-static

     * On Linux type (assuming that libGL.so is threaded):

        mkdir ~/qt-static
        cp lib/libqt-mt.a ~/qt-static


Now that a suitable static library has been built, its time to configure Glitch
to use it. First change into the directory that Glitch was unpacked to.
If you installed Qt by typing `make install' earlier, then type:

    qmake use-qt-static=true

Otherwise, you will need to specify where the static Qt library is, for example:

    qmake use-qt-static=true qt-static-dir=~/qt-static


NOTE: When building Glitch with `use-qt-static=true' UNIX/X11, an internal GUI
      style will be compiled and used, as to prevent it from looking ugly.
      Though if you wish, you can disable this behavior by specifying
      `use-internal-style=false' to qmake, for example:

          qmake use-qt-static=true use-internal-style=false


NOTE: If the static Qt library that you built requires any non-standard libraries
      (such as libX11 and libGL UNIX/X11), then you will need to specify them.
      For example, if you configured Qt with:
      `./configure -release -static -thread -qt-zlib -qt-libpng \
                       -no-sm -no-xinerama -no-xcursor -no-xrandr'
      then the static Qt library will still look for Xrender, Xft and freetype.
      Therefore you will need to APPEND the following to the qmake command:

          extra-libs="-lXrender -lXft -lfreetype"

      For example:
	  
          qmake use-qt-static=true qt-static-dir=~/qt-static extra-libs="-lXrender -lXft -lfreetype"

Now that Glitch has been configured, type:

	make

This should now build a version of Glitch that does not required the Qt shared
library. The executable will be called "glitch".
To run Glitch, simply call it by typing:

    ./glitch


Updated: February 19, 2004
