Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Confused about installation #70

Closed
benjamingeer opened this issue Jun 10, 2020 · 4 comments
Closed

Confused about installation #70

benjamingeer opened this issue Jun 10, 2020 · 4 comments

Comments

@benjamingeer
Copy link

Hello, I'm trying to install ScholarLY.

The README.md says I have to first install openLilyLib, and has a link to https://github.com/openlilylib/openlilylib, but that says it's deprecated and replaced by https://github.com/openlilylib/snippets. But the ScholarLY documentation says I need oll-core, which isn't in the snippets repository.

Looking around the other openLilyLib repositories, I guessed that instead I need to clone https://github.com/openlilylib/oll-core and https://github.com/openlilylib/scholarly into the same directory that contains my LilyPond file, so that the relative path in \include "oll-core/package.ily" would work.

I then tried using https://github.com/openlilylib/scholarly/blob/master/usage-examples/annotate.ly as a test. When I run LilyPond, it returns a lot of errors:

$ ls
annotate.ly  oll-core  scholarly
$ lilypond annotate.ly 
GNU LilyPond 2.20.0
Processing `annotate.ly'
Parsing...
oll-core/internal/init.ily:47:2: error: GUILE signaled an error for the expression beginning here
#
 (use-modules (oll-core internal tools))
no code for module (oll-core internal tools)
oll-core/internal/init.ily:48:2: error: GUILE signaled an error for the expression beginning here
#
 (use-modules (oll-core internal grob-tools))
no code for module (oll-core internal grob-tools)
oll-core/internal/init.ily:49:2: error: GUILE signaled an error for the expression beginning here
#
 (use-modules (oll-core internal control))
no code for module (oll-core internal control)
oll-core/internal/init.ily:52:2: error: GUILE signaled an error for the expression beginning here
#
 (use-modules (oll-core internal lilypond-version-predicates))
no code for module (oll-core internal lilypond-version-predicates)
oll-core/internal/init.ily:55:2: error: GUILE signaled an error for the expression beginning here
#
 (use-modules (oll-core internal alist-access))
no code for module (oll-core internal alist-access)
oll-core/internal/options.ily:376:1: error: unknown escaped string: `\newAtree'

\newAtree oll-options
oll-core/internal/options.ily:376:11: error: syntax error, unexpected SYMBOL, expecting ',' or '.' or '='
\newAtree 
          oll-options
oll-core/internal/options.ily:387:4: In expression (setAtree (quote oll-options) opt-path ...):
oll-core/internal/options.ily:387:4: Unbound variable: setAtree

What am I doing wrong?

@uliska
Copy link
Contributor

uliska commented Jun 11, 2020

Thank you for pointing me to an outdated link in the README page. I have updated it to point to https://github.com/openlilylib/oll-core/wiki. Please check out if that works for you.

Basically you have to "install" oll-core in a path on LilyPond's include path. That way LilyPond can find all relative paths. oll-core and any used packages have to live within one dedicated directory of your choice, e.g. ~/git/oll-core

@benjamingeer
Copy link
Author

Thanks, but I think I'm still misunderstanding something. I now have:

  • /home/ben/git/oll-core
  • /home/ben/git/scholarly
  • /home/ben/git/music-test/annotate.ly

In the music-test directory, I type:

$ lilypond -I /home/ben/git/ annotate.ly

But this produces more errors:

GNU LilyPond 2.20.0
Processing `annotate.ly'
Parsing...
/home/ben/git/scholarly/annotate/module.ily:45:1: warning: 

No entry file found for package 'stylesheets'. Please check spelling and/or package installation.


\loadModule stylesheets.span
/home/ben/git/scholarly/annotate/module.ily:45:1: warning: 

No entry file found for module 'stylesheets.span'. Please check spelling and/or package installation.


\loadModule stylesheets.span
/home/ben/git/scholarly/annotate/module.ily:49:2: error: GUILE signaled an error for the expression beginning here
#
 (define color-annotation
Unbound variable: define-styling-function
/home/ben/git/scholarly/annotate/module.ily:72:1: error: unknown escaped string: `\setSpanFunc'

\setSpanFunc annotation #color-annotation
/home/ben/git/scholarly/annotate/module.ily:72:14: error: syntax error, unexpected SYMBOL, expecting ',' or '.' or '='
\setSpanFunc 
             annotation #color-annotation
/home/ben/git/scholarly/annotate/module.ily:72:26: error: GUILE signaled an error for the expression beginning here
\setSpanFunc annotation #
                         color-annotation
Unbound variable: color-annotation
/home/ben/git/scholarly/annotate/module.ily:84:2: error: GUILE signaled an error for the expression beginning here
#
 (define validate-scholarly-annotation
Unbound variable: define-span-validator
/home/ben/git/scholarly/annotate/module.ily:95:57: error: GUILE signaled an error for the expression beginning here
\setChildOption stylesheets.span.validators annotation #
                                                        validate-scholarly-annotation
Unbound variable: validate-scholarly-annotation
/home/ben/git/scholarly/annotate/module.ily:95:1: warning: 

Trying to add child to non-existent option: stylesheets.span.validators


\setChildOption stylesheets.span.validators annotation #validate-scholarly-annotation
/home/ben/git/scholarly/annotate/module.ily:114:4: In expression (tagSpan (quote annotation) (add-type # "critical-remark") ...):
/home/ben/git/scholarly/annotate/module.ily:114:4: Unbound variable: tagSpan

I think maybe I haven't understood what you mean here:

oll-core and any used packages have to live within one dedicated directory of your choice, e.g. ~/git/oll-core

Does this mean that I have to put scholarly somewhere inside the oll-core directory?

@uliska
Copy link
Contributor

uliska commented Jun 11, 2020

OK, sorry for the confusion created by badly maintained documentation.

There are two issues here, one purely documentation, the other in coding:

  1. By now scholarLY depends on the stylesheets package, so you should clone https://github.com/openlilylib/stylesheets as well. I have just updated the README accordingly.

  2. Instead of silently trying to load the dependency and warning about a missing entry, oll-core should explicitly warn about a missing dependency. I'll have to look into that. (Better handling of dependencies oll-core#47)

PS: I would suggest to add a directory /home/ben/git/openlilylib (or similar) and move the whole openLilyLib installation inside that (and adjust the LilyPond invocation accordingly). But that's merely organizational and up to you.

@benjamingeer
Copy link
Author

That works, thank you! Looking forward to experimenting more with scholarLY.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants