Installation instructions for "The Life of a Geek:"

0. The program requires the following to build:

        a. A C library which supports ANSI C / C89 / ISO/IEC 9899:1990
	   -C99 support is optional and recommended.
 	   -glibc 2.1 or later is recommended.
	b. A C++ library which supports the ISO 14882 C++ standard.
	   -gcc 3.x or later's included library is recommended.
        c. A C/C++ compiler
	   -gcc is recommended, 3.x or later preferred.
	d. Make program
	   -GNU make is recommended.
	e. An rm program
	   -GNU fileutils is recommended.	
	f. An install program
	   -GNU install is recommended.

    The program was successfully compiled on Cygwin 1.3.22,
    Slackware Linux 9.0, and Slackware Linux 9.1.

1. Edit "Makefile" and make sure the following settings are correct:
	
	CXX: Your C++ compiler.
        CXXFLAGS: Compiler flags. Default is -O2 optimizations,
                  -Wall (show all warnings), and for unstable
                  versions, -g (debugging symbols).
        O: What your system uses as an extension for binaries.
           UNIX-based systems don't have any, leave blank.
           Windows with Cygwin uses ".exe".
        RM: What your system uses to remove files.
	INSTALL: Your install program.
	PREFIX: Where to install lifegeek.

        IMPORTANT NOTE: If you change PREFIX in the Makefile, YOU MUST CHANGE
	ALL OF THE VARIABLES' LOCATIONS IN "version.c" TO MATCH! (see 3).

2. Edit "version.h" and make sure the following settings are correct:
   
   a.   #define HAVE_STRLWR
        
	Uncomment this (remove /* and */) if your compiler/C library includes
        a char* strlwr (char* sz) function. Cygwin does. 

   b.   ISO C99 math functions / Mac OS X compatibility

	If your compiler/C library doesn't support roundf() and truncf() in 
	<math.h> (pre-glibc-2.1) you need to comment out (add /* and */ around
	code) these three lines of code.

	If you have Mac OS X, comment out only the third line to get the
	program to compile properly.

3. Edit "version.c" and make sure the following settings are correct:

        char CURRENCY_SEPARATOR: Change to what you use to separate
                                 currency from its hundredths unit.
        char* MAINFILE, LICENSEFILE, WASTEFILE, JOBFILE:
              These variables define the files which the game uses. 
              Make sure they are set for the location where they will be.
              For example, if you are installing license.lg in
              /usr/local/share/lifegeek, change the value to
              "/usr/local/share/lifegeek/license.lg".

        char* SCOREFILE:
              This variable defines where the score file will be kept and
              what the score file will be called.
	
	char* SAVEFILES:
	      This variable defines where the save files will be kept.

4. Type "make" to build the program.

Removal:

1. Type "make clean" to remove all object files but keep the compiled program.

2. Type "make distclean" to remove all object files and the compiled program.

Installation:

1. "make install" as root to install. Under Cygwin, type "./cyginst.sh" to
install in /usr/local (change the script yourself for another location). Under 
Cygwin, files installed will be totally accessible by any user on the system - 
be careful.

Enjoy!
Daniel Quintiliani
coredump0@mercurylink.net
