[icon]

GNU LilyPond

Welcome to the home of the GNU Music Typesetter

What is LilyPond
General information
Simple examples
Complex examples
Download
GNU/Linux binaries
Windows
Source code
Documentation
Tutorial
Manual
Glossary
other ...

Support
Mailing lists
Search
WikiWiki
FAQs

External sites
lilypond.org/development
lilypond.org/stable
ftp.lilypond.org
Mutopia
Other music online

Compiling LilyPond on Windows

Obtaining LilyPond

You can get the latest version of LilyPond at ftp://ftp.lilypond.org/pub/LilyPond/.

Windows build requirements

You need the following packages to compile Lilypond on Windows.

The GNU + Cygnus tools, 1.3.6 or newer.
Check out the Cygwin webpage. You can get the latest version of the GNU + Cygnus tools from cygnus mirror site. Install everything, including tetex and texmf.
GUILE 1.4, or newer.
Check out the GUILE webpage. You may need the patch guile-1.4-gnu-windows.patch included in LilyPond's source distribution.

Cross compiling

These binaries are cross compiled for Windows on a GNU/Linux box. You may want to check out the cross compilation scripts.

Compiling on Windows

Compiling on Windows should be possible, but how should we now? If you have any experiences you want to share, please do so at Compiling on Windows. Or write to one of the mailing lists.

Windows installation specifics

Installing LilyPond on Windows is similar to a unix installation, but needs a number of extra tricks. All code for these tricks can be found in the source package directory Documentation/windows.

guile-1.4-gnu-windows.patch
You may (Cygwin gets better every day) need this patch to compile GUILE.
cygwin-installer.patch
Apply this patch to the cinstall directory of winsup-src/cinstall, to get the LilyPond installer.

Compiling setup.exe has been complicated a bit with the introduction of the bzip2 feature. Here's how I did it:


    mkdir cygwin-20020218 && cd cygwin-20020218
    export CVSROOT=:pserver:anoncvs@anoncvs.cygnus.com:/cvs/src
    touch $HOME/.cvspass
    cvs login
    cvs -z3 co -D20020218 winsup
    cd src/winsup/cinstall
    patch < $HOME/usr/src/lilypond/Documentation/windows/cygwin-installer.patch
    (cd ../bz2lib; ./configure; make)
    ./configure
    CYGWIN=$HOME/usr/src/cygwin/cygwin-1.3.6
    cp $HOME/usr/src/lilypond/Documentation/windows/LilyPond.ico .
    make w32api_lib=$CYGWIN/usr/lib/w32api \
        CXX="g++ -L$CYGWIN/usr/lib/mingw"
    cp -pv setup.exe $CYGWIN/dist/cygwin-1.3.6/new-setup.exe
    strip $CYGWIN/dist/cygwin-1.3.6/new-setup.exe

-prefix=/usr/lilypond-x.y.x
The standard binary installation installs LilyPond into its own prefix. We think it's silly, but do this is on special request of Windows users.
fix-suffixes.sh
Add .exe to binary executables.
/etc/postinstall/
A post installation script that updates a symlink.
/etc/profile.d/
A number of login profile scripts set environment vars, every time you start the LilyPond/Cygwin shell (or Bash, for that matter).

These scripts and tricks are known to work, but may be incomplete. If you find a bug, please send us your fix.

Windows users have indicated that a DOS style login (as supposed to the LilyPond/Cygwin shell), would be useful. We don't enjoy DOS scripting, and think users should try the bash shell, which is better suited for typing in commands. It really helps a lot and pays off to read some introduction to this Bash shell. However, if you have written useful DOS login scripts, please send us your code.

Go back to index of LilyPond.

Please send GNU LilyPond questions and comments to lilypond-user@gnu.org.

Please send comments on these web pages to lilypond@packages.debian.org

Copyright (c) 1997--2001 Han-Wen Nienhuys and Jan Nieuwenhuizen.

Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved.


This page was built from LilyPond-1.4.12 (stable-branch) by

Anthony Fok <lilypond@packages.debian.org>, Tue Mar 12 01:35:55 2002 HKT.