[icon]

GNU LilyPond

Windows Installation

What is LilyPond
Home
Examples
Templates
Download
GNU/Linux binaries
Windows binaries
Source code
Documentation
Tutorial
Manual
Glossary
Index

Support
Mailing lists
Search
WikiWiki

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

WINDOWS - Installing GNU LilyPond on Windows

This document explains how to install the binary release for windows on a Microsoft Windows 95, 98, ME, NT, 2000 or XP machine. Please follow the instructions carefully. If it doesn't work for you, please send a bugreport, following the guidelines in the section on bugreports below.

QuickInstall

Click Install Lily now, run the installer (setup.exe), and in the Package View dialogue, select LilyPond, found in the Publishing section.

If you have any problems, please read the rest of this page.

Windows binary setup

The binary LilyPond setup for Windows is in fact a Cygwin installation, including the LilyPond package for Cygwin.

If you run Windows NT, 2000 or XP, please become administrator first; installing as an ordinary user does not seem to work on certain Windows-NT variants. Download and run setup.exe. You will be asked some questions. If you are unsure just click "Next". Do not change the default install directory c:/cygwin. Do not change the default text type UNIX, i.e., do not use DOS mounts.

In the Package View dialogue window, click on the Publishing section to view the available publishing software for Cygwin. Make sure that LilyPond is selected. If this is a new or first installation, click on Skip to select.

This installs LilyPond, and Cygwin, GUILE, Python, teTeX (MikTeX is not supported). If you already have some of that software under c:/cygwin, then don't worry: nothing will be installed twice.

Additional software

If you install the Cygwin's XFree86 X11 window system, tetex-x11 and ghostscript-x11 packages too, you can view the dvi output doing xdvi test.dvi.

LilyPond needs a PostScript/PDF viewer to be really useful. At this time (Sun Aug 11 2002), such software is not available in Cygwin, so you must use native Windows software instead.

Ghostview.
You can use GSView-2.6. This old package has two advantages. It has gsview and ghostscript bundeled, and it doesn't popup Register Now|Cancel windows all the time.

Install GSView-2.7 (GhostView for Windows), or visit ftp://mirror.cs.wisc.edu/.

If you need to view PDFs, or want to create PDFs using GSView, you can install the newer versions GSView-3.6 and GhostScript-6.50. You get annoying Register Now|Cancel popups, though.

Install GSview-3.6 and GhostScript-6.50, or visit the Ghostview and GSview site.

Note: ftp.cs.wisc.edu has moved the ghostscript/ghostview distribution to a rather unreliable server.

Testing LilyPond

Open a LilyPond shell (To open a a lilypond shell, click the "GNU LilyPond" or "Cygwin" icon), and type

     lilypond --help
     

You should see something similar to

     GNU LilyPond 1.6.0
     Usage: lilypond [OPTION]... FILE...
     
     Typeset music and or play MIDI from FILE
     
     LilyPond is a music typesetter.  It produces beautiful sheet music
     using a high level description file as input.  LilyPond is part of
     the GNU Project.
     
     Options:
       -h,--help             this help
     [..]
     

Then, prepare a file called foo.ly, by issuing

     notepad foo.ly
     

Enter the following into the file

     
     \score { \notes { c4 ( ) c4 } }
     
     

Close the editor and save the file. Then run the following command.

     ly2dvi -p foo
     

At the end, it should say

     DVI output to `foo.dvi'...
     PS output to `foo.ps'...
     PDF output to `foo.pdf'...
     

If you install the Cygwin's XFree86 X11 window system, tetex-x11 and ghostscript-x11 packages too, you can view the dvi output doing:

     startx
     xdvi test.dvi
     

If you have installed a PostScript/PDF viewer, such as GSView from http://www.cs.wisc.edu/~ghost, viewing the PS file can be done with:

     gsview32 foo.ps
     

If this works, then you can head to the Tutorial (local copy) to start using LilyPond.

Removing LilyPond

Start setup.exe, click Next, select "Install from Local Directory". Then click next until you reach "Select packages to install". Click "View". Now, for every package, click on the recycle icon until it says "Uninstall". Then, click Next.

(If you find this too tedious, you can also simply remove c:/cygwin. This also removes the /home/ directories under cygwin (i.e. C:\CYGWIN\HOME, so make sure that you bring important files in safety first.)

Troubleshooting

For problems and solutions see Troubleshooting Windows

If you have a problem running LilyPond, you should first make sure that you are running the latest version. Chances are, that your problem was already reported and fixed in a newer release. Click Update Lily now to check if new software is available.

If you subscribe to the cygwin-announce (archives) mailing list, see Cygwin mailing lists, bottom of page. You'll be notified of new and updated software for Cygwin, including LilyPond.

Chances are, that a problem you experience has been noted by others. Cygwin specific problems will be reported to the cygwin-user (archives) mailing list (Cygwin mailing lists, bottom of page).

LilyPond specific problems, also concering Cygwin/Windows, are reported and discussed on the lilypond-user (archives) mailing list.

Setup.exe does not run at all

Make sure that you run this latest setup.exe. This will also work if you were using a setup.exe you donwloaded before from lilypond.org before.

If you're sure that you have the very latest version, and it doesn't work, and the cygwin-user archives do not mention the problem, write to cygwin@cygwin.com. Setup is under heavy development, so you may have been unlucky and have dowloaded a buggy version.

ly2dvi:error: filename should not contain spaces

I don't seem to be able to either change this "default" or to point Lilypond to another directory which does not have the space.
          ly2dvi:error: filename should not contain spaces: `/usr/bin/Ralph Whedon/foo'
          

Any ideas what I should do?

Best is to create a new home directory. Start the Cygwin or LilyPond shell, and do:
     HOME=/home/ralph
     mkdir -p $HOME
     cd
     

To go there automatically, each time you log in, edit the file

     /etc/passwd   # windows name: c:\cygwin\etc\passwd
     

using vim or wordpad, and change the `/usr/bin/Ralph Whedon/' to `/home/ralph'.

What's this Bash/Cygwin shell?

The bash shell is a basic UNIX-like console that we use for the Windows release. Using such an intercompatible shell makes it easier to maintain the Windows release reasonably, notably because it works the same as the normal UNIX setup. Keep in mind that none of the developers are using Windows.

Also it is possible to build LilyPond from source with a complete Cygwin install, see Compiling LilyPond on Windows.

Bash is not very different from the MS-DOS shell, you'll just have to (re-)learn a few commands needed to browse through your hard-drive. Here are some commands you'll definitely be needing.

To change folders, the usual cd

     cd ../..    # If you type this at startup, you should be in the root
                 # directory.  Better do:
     cd /
     

You'll notice that file names in Bash are written with the slash (/), and not the backslash (\) bar as in MS-DOS and Windows.

     C:\Win98\Bureau\  ---> /cygdrive/c/Win98/Bureau
     

The equivalent of the MS-DOS dir command is ls -l :

     ls -l       #You'll get the listing of the current folder.
     

To copy a file, use the cp command:

     cp srcfile destfile
     

For more information, see the DOS/Windows to Linux HOWTO.

Requirements and DLLs

TeTeX and LilyPond depend on a number of library packages, but as it seems, they sometimes do not get selected automagically.

  • teTeX requires: ash cygwin ed grep jpeg libkpathsea3 libncurses6 libpng12 tiff sed termcap zlib
  • LilyPond requires: bash libguile12 libiconv2 libintl2 libkpathsea3 python tetex-bin, tetex-tiny or tetex-base

DLL Package
cygguile-12.dll libguile12
cygintl-2.dll libintl2
cygiconv-2.dll libiconv2
cygltdl-3.dll libltdl3
cygpcre.dll pcre
cygpng12.dll libpng12
cygtiff3.dll tiff

Also, the more general info on missing DLLs may be helpful:

         http://cygwin.com/faq/faq_4.html#SEC32
         http://cygwin.com/ml/cygwin/2002-01/msg01619.html
     

Why don't you fix this?

Well, we've tried several times, but we can't reproduce the problem ('It works for me'). If you're experiencing DLL problems, you're much invited to help us find the bug and fix it. You can install the binutils package, and use objdump to find which executable depends on the missing dll.

     objdump -x <path to download dir>/setup.exe | grep -i dll
     objdump -x /usr/bin/awk.exe | grep -i dll
     objdump -x /usr/bin/python.exe | grep -i dll
     

Of course, you should check what version of the offending package you have installed (see /var/log/setup.log and /var/log/setup.log.full).

Check your TeX installation

Start a LilyPond shell and run

     latex sample2e
     

This should print a few lines of information and produce a file sample2e.dvi. Then run

     dvips sample2e
     

which produces a sample2e.ps, which you can view using gsview32.

When this works correctly, you could resume your attempts with LilyPond.

Bugreports

So you have checked by running Update Lily now that you run the latest version, and Troubleshooting Windows nor cygwin-user (archives) or lilypond-user (archives) mentions your problem. It looks like you found a bug.

We can only help you with a problem if you give a full, detailed bugreport. A bugreport includes

  • A precise description of the problem.
  • A full description of your platform (machine type, operating system)
  • All version numbers of relevant software you run. The best way to this is to run
                    sh -x /usr/bin/bug-lilypond-cygwin >& bug.txt
                    

    and include the file bug.txt. (If you are running lilypond 1.5.73 or earlier, download bug-lilypond-cygwin here.

If you have trouble using bug-lilypond-cygwin, you must gather this information by hand. Specifically, we want to see the output of the following commands:

  • Version info
                python -V
                lilypond --version
                ly2dvi --version
              
  • If ly2dvi fails, then please run it as follows and include the output in the
                ly2dvi --verbose MY-FILE
              

The file bug.txt should contain information on your system (check that). Send your problem together with bug.txt to lilypond-user@gnu.org.

Be sure to turn off HTML email. It is very annoying. For reasons unknown to man, most Windows email clients have that turned on by default.

If you are using Microsoft Outlook (Express), you can send normal plain text messages by clicking through the menus Tools/Options/Send/Mail Sending Format/Plain Text, with options:

     Set Message format as MIME, set "Encode text using:" to None.  Set
     Automatically wrap text at 70, and > is used to indent original text.
     

Easy instructions for various email clients can be found at helpdesk.rootsweb.com.

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 (address unknown)

Copyright (c) 1997--2002 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.7.14 (development-branch) by

Buchan Milne <(address unknown)>, Thu Mar 6 21:11:56 2003 CET.