Table of Contents
*****************

1 INSTALL - how to compile and install GNU Solfege 2.2.0 on a GNU like system
  1.1 Download
    1.1.1 Source code
    1.1.2 Precompiled binaries
  1.2 Requirements
  1.3 Configuring and compiling
    1.3.1 `--disable-pygtk-test'
    1.3.2 `--disable-pygnome-test'
    1.3.3 `--with-local-xmlcatalog'
    1.3.4 `--without-gnome'
    1.3.5 `--without-gtkhtml'
    1.3.6 `--disable-oss-sound'
  1.4 Packaging
    1.4.1 Debian
    1.4.2 Rpm-based distributions


1 INSTALL - how to compile and install GNU Solfege 2.2.0 on a GNU like system
*****************************************************************************

This file contains info on how to build and install GNU Solfege.  For
run-time info, check the README file and the man page.

   The homepage for GNU Solfege, `http://www.solfege.org', might also
be of interest.

1.1 Download
============

1.1.1 Source code
-----------------

The latest version is available from
`http://download.sourceforge.net/solfege' or (same server, other look)
`http://sourceforge.net/project/showfiles.php?group_id=1465'.

   The source code is also available from the GNU ftp sites and their
mirrors: `ftp://alpha.gnu.org/gnu/solfege' and
`ftp://ftp.gnu.org/gnu/solfege'.

1.1.2 Precompiled binaries
--------------------------

Precompiled binaries are made available for some releases. I build the
windows installer and the debian package myself. But I am depending on
users to provide binaries for other distributions. The debian package
is available directly from `http://www.debian.org'.  The rest are
available from Sourceforge: `http://download.sourceforge.net/solfege' or
`http://sourceforge.net/project/showfiles.php?group_id=1465'.

1.2 Requirements
================

The requirements are listed in the `README' file.

1.3 Configuring and compiling
=============================

     ./configure
     make
     su -c "make install"

   should work, and will install into

       /usr/local/bin
       /usr/local/share
       /usr/local/lib
       /usr/local/etc/solfege2.2

   Since Solfege require GNU m4 and GNU make, FreeBSD should do
something like this:

     M4=/usr/local/bin/gm4 ./configure
     gmake
     su -c "gmake install"

   If you first try without setting the `M4' variable, and see
configure fail, then you have to delete the file `config.cache' before
running the example above.

   Use the `--prefix' and `--sysconfdir' command line options to
install elsewhere. For example to install in your home directory:

     ./configure --prefix=$HOME/usr --sysconfdir=$HOME/etc
     make
     make install

   If you just want to run Solfege without installing, do this:
     ./configure
     make
     ./solfege.py

   The `configure' script can be given a number of options to enable
and disable various features. Some of them are described below.  For a
complete list, type:

     ./configure --help

1.3.1 `--disable-pygtk-test'
----------------------------

Do not for PyGTK, assume it is installed. Use this option if you know
the package is installed, but the configure script still cannot detect
it.

1.3.2 `--disable-pygnome-test'
------------------------------

Do not test for PyGNOME, assume it is installed. Use this option if you
know the package is installed, but the configure script still cannot
detect it.

1.3.3 `--with-local-xmlcatalog'
-------------------------------

Use this option if your `/etc/xml/catalog' file is broken or missing.
If `/etc/xml/catalog' is missing, then `xsltproc' will fetch the DTD
using the network. With this option, the build system will use the file
`online-docs/stupid_catalog_file.cat' included in the Solfege source
tarball. You might have to edit the file if the file names is different
on your system.

1.3.4 `--without-gnome'
-----------------------

If found by `configure', Solfege will take advantage of functions in
the GNOME libraries. Use this option to build the application run
without GNOME even if the libraries are found.

1.3.5 `--without-gtkhtml'
-------------------------

If found by `configure', Solfege will be built to use gtkhtml2, the
htmlwidget included in GNOME2. Use this option to build the application
to run without gtkhtml2, even if the libraries are found.

1.3.6 `--disable-oss-sound'
---------------------------

Use this if you are compiling on an OS that don't have the OSS.  The
default is `--enable-oss-sound'.

1.4 Packaging
=============

1.4.1 Debian
------------

Rename `debian-dir' to `debian' and run:

     dpkg-buildpackage -rfakeroot -us -uc

1.4.2 Rpm-based distributions
-----------------------------

I have started to collection spec files for rpm-based distros. I depend
on users of these distributions to send me spec files. Also, I do not
test these spec files myself, so you should send me an update if some of
the Requires or BuildRequires fields are wrong. Please notice that
there may be a difference between version 9 and 9.1 of a distro. Give
me the exact version number!

   Here is an example how to build a binary rpm package for Red Hat 9.
Replace the filenames to fit your distro if required.

     cp solfege-2.2.0.tar.gz /usr/src/redhat/SOURCES/
     tar zxf solfege-2.2.0.tar.gz
     rpm -bb solfege-2.2.0/solfege.redhat9.spec
     rpm -i /usr/src/redhat/RPMS/i386/solfege-2.2.0

   Hopefully, binary rpm packages for some distributions will be
provided later.

