NDir -- Nice Directory

         Compile and Installation Guide (version 0.8.4)

If you got a binary package of NDir, install it with the respective tool (rpm)!

System Requirements: What you need
==================================

 *  A POSIX compliant UNIX system (e.g. Linux).

 *  The GNU version of the make utility -- the Makefiles uses 
    some of its special features.

 *  A C++ compiler supporting Standard C++.

 *  The C library and the C++ standard library.

NDir has been successfully compiled with: 

  * EGCS 2.91.66 (GNU C++ standard library 2.9)
  
  * Previous versions were compiled with 
    GCC (the GNU C/C++ compiler) version 2.7.2.3 
    (GNU C++ standard library ver. 2.7). This compiler is not actively supported
    anymore.


Compiling NDir
==============

After having unpacked NDir (if neccessary), change to NDir's main directory.
If you use the GNU C++ standard library 2.7, edit the (top-level) Makefile 
and remove comments from the line saying "... GNU_CPPSTDLIB_VER27 ...".
(This is neccessary due to renamed methods in the string class.)

Also check some other settings at the top of the top-level makefile.

If you plan an installation for multiple systems in a common filesystem, read
about "multiple machine type option" below.

Type 

  make 
  
to compile the program.

In case you are using GCC 2.7.2.x, the compiler will issue lots of warnings 
about namespaces. You can safely ignore them (I hope...).


Installation
============

If the compilation was successful, decide where you want NDir to be installed. 
Edit the (top-level) Makefile: Set the variable 'prefix' to the directory 
where the program should be installed (files will actually be installed in some
of its subdirectories). Make sure you have write permission to that
directory. 

As make will write four files named 'ndir', 'lw', 'lw' and 'uninstall-ndir'
in the 'bin' subdirectory and the man pages in the man/man1 subdirectory, make
sure no existing files will be overwritten that you want to keep!!! make does
not warn you!

Then, type

  make install
  
to install NDir

An alternative to editing the Makefile would be calling make as follows:
make prefix=... install

lw and lv are alternative names for ndir, from which lv has the meaning of 
ndir -l. If you do not want the abbreviations (lw, lv), just remove the 
symbolic links.


Unistallation
=============

Beginning with version 0.5.4, NDir comes with an unstallation script.
Just execute 'unistall-ndir' from the installation directory.

  
Installation with multiple machine type option
==============================================

NDir supports to be installed for more than one platform in a common
directory tree. You will not need this feature unless you are using a network
of computers of different platform that share a common filesystem.

To use this feature, edit the Makefile and set the multi_machine_mode variable
to 'y', then set the installation prefix if neccessary (do this only once
to get everything installed in a common directory tree). Compilation and
installation then goes as follows: 

Call 'make clean', then compile and install NDir as explained above. Repeat
these steps for every platform you want to use.

The binary will be installed in the bin/MACHINE subdirectory, where MACHINE is
the value obtained by a call to 'uname -m'. Finally, ensure this directory 
is included in your PATH (the right one on each platform!).
