INSTALL - compiling and installing GNU LilyPond
***********************************************
-Abstract
-========
-
- This document explains what you need to install LilyPond, and what
-you should do. If you are going to compile and install LilyPond often,
-e.g. when doing development, you might want to check out the
-`buildscripts/set-lily.sh' script. It sets some environment variables
-and symlinks, which comes in handy when you have to compile LilyPond
-more often.
-
Obtaining
=========
* A GNU system: GNU LilyPond is known to run on these GNU systems:
Linux (PPC, intel), FreeBSD, AIX, NeXTStep, IRIX, Digital Unix
- and Solaris.
+ and Solaris.
* Lots of disk space: LilyPond takes between 30 and 100 mb to
compile if you use debugging information. If you are short on
* Although we recommend to use Unix, LilyPond is known to run on
Windows NT/95/98 as well. See Section Windows NT/95,es.
- * EGCS 1.1 or newer. Check out `ftp://ftp.gnu.org/gnu/gcc/'.
+ * A reasonable C++ compiler: EGCS 1.1, GCC 2.95.2 or newer. Check
+ out `ftp://ftp.gnu.org/gnu/gcc/'.
* Python 1.5, Check out `ftp://ftp.python.org' or
`ftp://ftp.cwi.nl/pub/python'.
* GNU Make. Check out ftp://ftp.gnu.org/gnu/make/
(ftp://ftp.gnu.org/gnu/make/).
- * Flex (version 2.5.4 or newer). Check out
+ * Flex (version 2.5.4a or newer). Check out
ftp://ftp.gnu.org/gnu/flex/ (ftp://ftp.gnu.org/gnu/flex/).
* Bison (version 1.25 or newer). Check out
`mfplain.mp', which is needed for producing the scalable font
files.
- If you do not want to use PostScript output, edit `mf/GNUmakefile'.
+ If you do not want to use PostScript output, edit `mf/GNUmakefile',
+ removing the line saying `PFA_FILES='
* kpathsea, a library for searching (TeX) files. `kpathsea' is
usually included with your installation of TeX.
strongly recommended. Xdvi will show all embedded PostScript
too if you have Ghostscript installed.
- * GUILE 1.3.4, check out http://www.gnu.org/software/guile/
+ * GUILE 1.3.4, or newer. Check out
+ http://www.gnu.org/software/guile/
(http://www.gnu.org/programs/guile.html)
For running LilyPond successfully you have to help TeX and MetaFont
find various files. The recommended way of doing so is adjusting the
-environment variables in the start-up scripts of your shell. An
-example is given here for the Bourne shell:
- export MFINPUTS="/usr/local/share/lilypond/mf:"
- export TEXINPUTS="/usr/local/share/lilypond/tex:/usr/local/share/lilypond/ps:"
+environment variables in the start-up scripts of your shell. Appropriate
+Csh and sh scripts are left in `buildscripts/out/lilypond-profile' and
+`buildscripts/out/lilypond-login' after compilation.
- The empty path component represents TeX and MetaFont's default
-search paths. Scripts with the proper paths for the bourne and C-shell
+ The empty path component represents TeX and MetaFont's default search
+paths. Scripts with the proper paths for the bourne and C-shell
respectively are generated in `buildscripts/out/lilypond-profile' and
`buildscripts/out/lilypond-login' during compilation.
- LilyPond is a hiddeously big, slow and bloated program. A fast CPU
-and plenty of RAM is recommended for comfortable use.
+ LilyPond is a big and slow program. A fast CPU and plenty of RAM is
+recommended for comfortable use.
Website
=======
If you want to auto-generate Lily's website, you'll need some
additional conversion tools.
- * xpmtoppm (from the Portable Bitmap Utilities) (For RedHat Linux
- users: it is included within the package libgr-progs).
- the original is at
+ * xpmtoppm (from the netpbm package: the Portable Bitmap Utilities)
+ (For RedHat Linux users: it is included within the package
+ libgr-progs). the original is at
ftp://ftp.x.org/contrib/utilities/netpbm-1mar1994.p1.tar.gz
(ftp://ftp.x.org/contrib/utilities/netpbm-1mar1994.p1.tar.gz)
- * pnmtopng, which is also in libgr-progs for RedHat. The original is
- at
+ * pnmtopng (also in libgr-progs for RedHat). The original is at
ftp://swrinde.nde.swri.edu/pub/png/applications/pnmtopng-2.37.2.tar.gz
(ftp://swrinde.nde.swri.edu/pub/png/applications/pnmtopng-2.37.2.tar.gz).i
The version of `pnmtopng' that is distributed with RedHat 5.1 and
5.2 contains a bug: pnmtopng is dynamically linked to the wrong
- version of libpng, which results in cropped images. Recompile it
- from source, and make sure that the pnmtopng binary is linked
- statically to the libpng that is included in libgr. RedHat 6.0
- does not have this problem.
-
- tar xzf libgr-2.0.13.tar.gz
- make
- cd png
- rm libpng.so*
- make pnmtopng
-
- You can then install the new pnmtopng into `/usr/local/bin/'
-
- * Bib2html (http://pertsserver.cs.uiuc.edu/~hull/bib2html).
- Which, in turn depends on man2html for proper installation.
- man2html can be had from
+ version of libpng.
+
+ * Bibtex2html (http://www.lri.fr/~filliatr/ftp/bibtex2html/), or
+ Bib2html (http://www.uni-koblenz.de/ag-ki/ftp/bib2html/).
+ Bibtex2html is available in debian, while bib2html is in some rpm
+ based distributions. Bib2html, in turn depends on man2html for
+ proper installation. man2html can be had from
http://askdonald.ask.uni-karlsruhe.de/hppd/hpux/Networking/WWW/Man2html-1.05
(http://askdonald.ask.uni-karlsruhe.de/hppd/hpux/Networking/WWW/Man2html-1.05).
- The website will build without this utility, but you will not see
- our hypertextified bibliography.
+ The website will build without bib converter utility, but you will
+ not see our hypertextified bibliography.
Configuring and compiling
=========================
to install GNU LilyPond, simply type:
-
gunzip -c lilypond-x.y.z | tar xf -
cd lilypond-x.y.z
./configure # fill in your standard prefix with --prefix
/usr/local/man/man1/midi2ly.1
/usr/local/man/man1/abc2ly.1
/usr/local/man/man1/etf2ly.1
- /usr/local/man/man1/convert-mudela.1
- /usr/local/man/man1/mudela-book.1
+ /usr/local/man/man1/convert-ly.1
+ /usr/local/man/man1/lilypond-book.1
/usr/local/man/man1/lilypond.1
/usr/local/bin/lilypond
/usr/local/bin/midi2ly
- /usr/local/bin/convert-mudela
- /usr/local/bin/mudela-book
+ /usr/local/bin/convert-ly
+ /usr/local/bin/lilypond-book
/usr/local/bin/abc2ly
+ /usr/local/bin/pmx2ly
+ /usr/local/bin/musedata2ly
/usr/local/bin/etf2ly
/usr/local/share/lilypond/*
/usr/local/share/locale/{....}/LC_MESSAGES/lilypond.mo
and for the profiling version, I specify a different configuration.
- ./configure --prefix=~ --enable-profiling --enable-config=optprof --enable-optimise --disable-checking
- make config=optprof
- make config=optprof install
+ ./configure --prefix=~ --enable-profiling --enable-config=prof --enable-optimise --disable-checking
+ make config=prof
+ make config=prof install
Installing
==========
rpm -tb lilypond-x.y.z.tar.gz
rpm -i /usr/src/redhat/RPMS/i386/lilypond-x.y.z
- Precompiled i386 RedHat RPMS are available from
+ Precompiled RedHat-7.0 i386 RPMS are available from
`ftp://ftp.cs.uu.nl/pub/GNU/LilyPond/RedHat/'.
For compilation on a RedHat system you need these packages, in
* texinfo
+ * tetex-devel
+
Debian GNU/linux
================
A Debian package is also available; see
http://packages.debian.org/lilypond
(http://packages.debian.org/lilypond) or contact Anthony Fok
-<foka@debian.org> for more information. The build scripts are in the
-subdirectory `debian/'.
+<foka@debian.org> for more information.
+
+ The build scripts are in the subdirectory `debian/'; you can make
+the .deb by doing
+
+
+ tar xzf lilypond-x.y.z.tar.gz
+ cd lilypond-x.y.z
+ dpkg-buildpackage
+ dpkg -i ../lilypond_x.y.z*deb
+
+ For compilation on a Debian GNU/Linux system you need these packages,
+in addition to the those needed for running:
+ * libc6-dev
+
+ * libstdc++<your-libstdc++-version-here>-dev
+
+ * libguile<your-libguile-version-here>-dev
+
+ * flex
+
+ * bison
+
+ * gettext
+
+ * texinfo
+
+ * tetex-dev
+
+ * debhelper
Windows NT/95
=============