Basic Installation
==================

 The easiest way to install M3X is to do the following (in the top-level
 directory of the source tree, containing the 'configure' script):

	./configure
	make
	make install

 This will hopefully build three binaries: m3x, m3x-text and xmlmerge.
 If you don't have the necessary libraries for one of these, that one
 will be skipped.

 To compile you should have the following libraries installed:
 	+ the GNOME libraries (optional, but strongly recommended)
	+ GTK+ (required by GNOME)
	+ glib
	+ gnome-xml, also known as libxml.
	+ popt (optional)
	+ libreadline (optional)

 If you don't have the GNOME libraries and GTK+, but have everything else,
 then the GNOME application won't be built, however the console utilities
 (m3x-text and xmlmerge) will be built.

 If you don't have the readline library installed, m3x-text won't be built.

 If you don't have popt, then xmlmerge won't be built.

 If you don't have glib or libxml, nothing will be built, because these are
 the fundamentals of these applications.

 To put it cleanly, I'll tell you which utility depends on what:
	m3x: GNOME, gnome-xml.
	m3x-text: glib, gnome-xml, libreadline and optionally popt.
	xmlmerge: glib, gnome-xml, popt.
	id3xml: glib, gnome-xml, popt.

Advanced Installation
=====================

 Of course, you can force the configure script to skip certain checks. See
 the output of the

	./configure --help

 command for a full list of available options.

 Let's say, you only want to build the GNOME application. Then, you can easily
 disable the building of the two other apps, by passing --without-text-utilities
 to the configure script.

 If you don't want to build the GNOME app, but the other two, then run the
 configure script with the --without-gnome paramater.

 NOTE: configuring without GNOME is done in a quite inefficient manner. This
 is because libxml is detected via GNOME's gnome-config script. If it isn't
 present, we can only rely on the things specified with the
 '--with-xml-includes' and '--with-xml-libs' options. We'll do a check to see
 if they are correct, but the configure script won't search for alternatives.

 For more information, see the INSTALL.Basic file, which contains general
 installation notes.

Known Troubles
==============

 When configuring without GNOME support ( or maybe in the other case too ), the
 configure script does not always detect the things correctly. For example, on
 a Debian woody system, it did not found ANSI C headers, nor gettext, although
 they were installed correctly.

 In this case, simply edit the config.h file, and change #undefine [something]
 to #define [something] 1, if you have that feature available on your system.
