lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Problem: incompatible Lilypond and Guile


From: Jay Anderson
Subject: Re: Problem: incompatible Lilypond and Guile
Date: Thu, 22 May 2014 16:17:49 -0700

On Thu, May 22, 2014 at 2:09 PM, Simon Albrecht <address@hidden> wrote:
> Am 22.05.2014 22:36, schrieb rm damerell:
>
>> Dear colleagues,
>>
>> I have a problem due (I think) to a bad mixture of
>> versions of Lilypond and Guile. Versions are:
>> L-Ubuntu 12.04
>> guile-2.0.5+1-1   (most recent version I found in Ubuntu repository)
>> Lilypond 2.18.2   (From lilypond.org)
>
> Lilypond still works with Guile v1.8 (which is unfortunate since this will
> cease to be supported in some upcoming Linux distributions). See
> http://code.google.com/p/lilypond/issues/detail?id=1055. I don’t know
> whether there’s currently any work on this.

I'm curious. What needs to be done to make lilypond work with guile 2?
The comments on that bug haven't been updated in quite a long time and
searching doesn't yield much. Are there any small tasks?

As an exercise I tried to build lilypond from git against guile 2.0:

Build guile-2.0:
> wget ftp://ftp.gnu.org/gnu/guile/guile-2.0.9.tar.xz
> tar -xJf guile-2.0.9.tar.xz
> cd guile-2.0.9
> ./configure --prefix=/opt/guile-2.0
> make
> sudo make install

Build lilypond (from git):
... Modify configure.ac to use 2.0.9 instead.
> ./autogen.sh
> export PATH=/opt/guile-2.0/bin:$PATH #(probably need a better way to override 
> this)
> export LD_LIBRARY_PATH=/opt/guile-2.0/lib:$LD_LIBRARY_PATH #(probably need a 
> better way to override this)
> ./configure CPPFLAGS=-I/opt/guile-2.0/include LDFLAGS=-L/opt/guile-2.0/lib 
> --prefix=/opt/lilypond-dev
> make #(fails generating documentation)

At this point I can at least run ./out/bin/lilypond test.ly. Contents
of test.ly:
=======================
\version "2.19.0"

\score
{
  \new Staff \relative c'
  {
    c'4 d e f |
  }
}
=======================

The first thing I noticed is that the nested define shorthand wasn't
working in many places (even with (use-modules '(ice-9
curried-definitions))' in lily.scm). Beyond that I'm way out of my
depth. I start seeing errors Which I'm not sure how to handle:

=======================
Processing `test.ly'
Parsing...
/home/jay/programming/lilypond/./out/share/lilypond/current/ly/init.ly:9:2:
error: GUILE signaled an error for the expression beginning here
#
 (session-initialize
ERROR: Error while printing exception.
WARNING: (#{ g26648}#): `parser' imported from both (lily) and (#{ g23706}#)
WARNING: (#{ g26648}#): `parser' imported from both (lily) and (#{ g23706}#)
test.ly:5:24: error: wrong type for argument 2.  Expecting music, found "c"
  \new Staff \relative
                       c'
...
=======================

Anyway, it'd be nice to know the major hold-ups and tasks from someone
who's more familiar with this area.

-----Jay



reply via email to

[Prev in Thread] Current Thread [Next in Thread]