LDAPExplorerTool
----------------

LDAP Explorer Tool is a free LDAP client, that enables the user to manage LDAP
directories.
With this tool you can view, edit or delete any entry of the LDAP server. You
can also manage the schema, export and import entries using the LDIF format.
LDAP Explorer aims to run on mutliple platforms like Windows, Linux, Solaris, 
Mac OS X...
But for now it has only been tested on Windows and Linux. You're welcome to try
to build and run LDAP Explorer Tool on other platforms. Please give us your
feedback at ldaptool-devel@lists.sourceforge.net.

1. Requirements
---------------

LDAP Explorer Tool has two main dependencies :

- wxWindows 2.2.3 or above : this library is licensed under LGPL and can be
downloaded at www.wxWindows.org.
LDAP Explorer Tool uses the XML-based resource system (XRC). It's an optionnal
component from the wxWindows library, so you'll probably have to compile it 
from source. Follow the instructions at 
http://wxwindows.org/manuals/2.4.0/wx478.htm#compilingxrc and everything should
work out well.

- An LDAP library (no kidding !). The following LDAP libraries are known to 
work :
	* iPlanet Directory SDK for C : this library is licensed under the 
	  "Netscape ONE SDK END-USER LICENSE AGREEMENT" and can be downloaded at
	  http://www.sun.com/software/download/developer/5176.html
	* OpenLDAP 2.0 and above : it's an Open Source LDAP suite for UNIX-like
	  platforms, available at http://www.openldap.org. It's included in many
	  Linux distributions (you'll need to have the developpement package).


2. Building on Windows
----------------------

Before compiling LDAPExplorerTool, you have to install a pre-compiled version of 
WxWindows (2.4) or to build it from the source. Be sure to have the WXWIN system 
variable set to the root directory of your install of WxWindows.

LDAPExplorerTool uses XRC resources, so do not forget to build "wxxrc" library
which is located in the wxWindows "contrib" directory.

You must also have installed an LDAP SDK. 

LDAPExplorerTool is known to work with iPlanet Directory SDK for C version 5.0, 
but it may compile with another SDK. 
It has been successfully build with opendlap library ( see 2.3 ).


2.1 Microsoft Visual Studio 6.0

- Open the LDAPExplorer.dsw workspace file that you will find in the root of the 
  install directory
- In the "Tools/Options" menu of Visual Studio :
			* Select "Directories" tab
			* In the "include files" add the path to the include directory 
			  of your LDAP SDK.
			* In the "library files" add the path to the lib directory of your 
			  LDAP SDK
- Add the LDAP SDK library name in the "Link" tab in the project settings of 
  the LDAPExplorerTool project (ex nsldapssl32v41.lib for iPlanet)
- Select the "Build/Batch Build" menu of Visual Studio. In the dialog choose 
  LDAPExplorerTool - Win32 Release and LDAPExplorerTool - Win32 Debug. 
  Click the "Build" button.

2.2 BCC 5.5
- At this time i18n is not supported in this version.
- The iPlanet LDAP SDK does not provide an import library for Borland C++. So you will
  have to create one yourself using the "implib" command line tool (BCC5.5) :
  		implib libLDAPbc.lib {LDASDKDLLName}.dll 
  where LDASDKDLLName depends on the DLL version you are using.

- in the src directory of the LDAPExplorerTool enter :
		* make -f makefile.b32 LDAP={LDAP SDK Directory}(debug version)
		* make -f makefile.b32 LDAP={LDAP SDK Directory} FINAL=1(release version)

2.3 Using OpenLDAP SDK


If you plan to use OpenLDAP SDK you will have to build it first. OpenLDAP source
distribution contains a workspace file for Visual Studio but no support for BCC
is provided.

You do not need to build all the OpenLDAP distribution, but these two libraries 
are mandatory :

	- liblber
	- libldap
	
In order to simply build these libraries, build the api_test project.

You can build OpenLDAP whith SASL support, but in this case you must also download
Cyrus SASL library and build it.

If you do not plan to use SASL you can modify de "Portable.nt" config file in
OpenLDAP's include directory and comment the following line :

#define HAVE_CYRUS_SASL 1

Download the OpenLDAP source distribution ( www.openldap.org ).

Some changes must be made to the client libraries projects ( libldap and liblber ).
In the project settings, C/C++ tab, change the runtime library to 
"Multithreaded DLL" (or "Debug Multithreaded DLL" for debug version ).



In LDAPExplorerTool add to link tab of the project setting the to libraries :
	oldap32.lib olber32.lib

3. Building on Linux
--------------------

If you want to build from CVS, you'll need to have gettext, automake and 
autoconf installed. First of all, run the "autogen" script to generate all the 
necessary build files :
	% ./autogen.sh
This will also run the "configure" script.
You can then proceed to build the software.

If you've downloaded the source tarball, just untar it and run the "configure"
script :
	% tar xzvf LDAPExplorerTool-VERSION.tar.gz
	% cd LDAPExplorerTool-VERSION
	% ./configure
(replacing VERSION with the appropriate version string)

The configure doesn't have any extra option for now. For a list of the generic
options, look at the INSTALL file. You might need to use the --libdir and
--includedir options if your LDAP SDK is not in the standard directories.

Build the software :
	% make

Install the software. You'll probably need to be root to do this :
	% make install


4. Comments and feedback
------------------------

Please send us your feedback (good or bad...) about this software, and tell us
if you've managed to build or run it.
If you have any question or comment, please send an e-mail to
ldaptool-devel@lists.sourceforge.net.
Issues specific to Linux can be directed at honkr@users.sourceforge.net.

Good luck !
