From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Thomas Morley Newsgroups: gmane.lisp.guile.user Subject: Re: How to make GNU Guile more successful Date: Sun, 5 Mar 2017 03:05:55 +0100 Message-ID: References: <2e4e293e-618e-809a-2eff-31576319ea61@gmx.de> <874lzod28a.fsf@web.de> <6deb1610-e31b-b5c2-e9c9-95a2289af216@gmx.de> <87mvdfs6mh.fsf@web.de> <871sued8h7.fsf@fencepost.gnu.org> <87tw78sj34.fsf@web.de> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Trace: blaine.gmane.org 1488679599 9157 195.159.176.226 (5 Mar 2017 02:06:39 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Sun, 5 Mar 2017 02:06:39 +0000 (UTC) Cc: guile-user@gnu.org, David Kastrup To: Arne Babenhauserheide Original-X-From: guile-user-bounces+guile-user=m.gmane.org@gnu.org Sun Mar 05 03:06:33 2017 Return-path: Envelope-to: guile-user@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ckLZ8-0001Tc-QM for guile-user@m.gmane.org; Sun, 05 Mar 2017 03:06:31 +0100 Original-Received: from localhost ([::1]:37269 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ckLZE-0007gd-Vu for guile-user@m.gmane.org; Sat, 04 Mar 2017 21:06:37 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:36894) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ckLYk-0007gX-SL for guile-user@gnu.org; Sat, 04 Mar 2017 21:06:10 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ckLYh-0006lb-9v for guile-user@gnu.org; Sat, 04 Mar 2017 21:06:06 -0500 Original-Received: from mail-qk0-x22e.google.com ([2607:f8b0:400d:c09::22e]:35206) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1ckLYc-0006ki-Ld; Sat, 04 Mar 2017 21:05:58 -0500 Original-Received: by mail-qk0-x22e.google.com with SMTP id v125so49108976qkh.2; Sat, 04 Mar 2017 18:05:56 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=rP2lhk1e3kbZWaaDnxW6xwY8TIWYo01MBW8ZMu08MyU=; b=nmir9GlInIRQaAMNHSeUepR2GwHBE6hvjnY2v0opkPRloGWQ/Suf8soYaKciWbB+2T pLW+8TXEBfAmBzz2auLno11au9gfHpTr3ojpeTrQAtyN//Pq979OxZvJ+RIXD4d5Olnc p2muEbdRLnKtqB++FG1JTt6kZ77Oocjf5iHhzqL4ort/8gbn+eoKxheQpl7ICXsT2yH9 rzXfnv50ZTB/FdzK+2QYldLMrnIaq8Jk9f4/ofrUgvlC5o1uXtY4c4VZkAjx4zfES/UY 1lo0oGVaEkod8jWAtWBnSakapkgaZSxQ0QEXqaFvGAkHPq7psGD5gmf9UblIwgsbgqTx eo2Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=rP2lhk1e3kbZWaaDnxW6xwY8TIWYo01MBW8ZMu08MyU=; b=XVFANG/hg+4md/s4wA5IIA7U8Wb5TMZBcmJCNNQxkSJZUpMJCLbI3cLWocgNCHNh5E 44r3HhZXpur0QNeOLZJ2WaZNpmQ0j2s+ppfiBr6nouQNNewrTXvXapfoFt44i+yLKe9S kQ0TBIXzRjRpeKrmP2NylznIHUdEDJla9H2TOnlpcGTMtW3KrKy/mVheBcNwyfGJLDa0 iLlBvuvXAJAwQsV5/uq2OcEWRiolpJ3T3SG7e7XsXn8GB8uw5mMY5qrp2jo8D/icWEA2 zvUaR0hjZ9I4DfAPLIw/I17Z9cnK4D5JYiutU4so+Ro0oIMv1SjsZQVS3Nxg71CAZhis KXjA== X-Gm-Message-State: AMke39nw4iMJyNQT2T0WyeSRGurC3COoo+n3Os4EbUkg3Oz05mfvFjppcUczjDLZcIsAeTQnLaqDYLRvTAlqdg== X-Received: by 10.55.66.78 with SMTP id p75mr10076323qka.152.1488679555832; Sat, 04 Mar 2017 18:05:55 -0800 (PST) Original-Received: by 10.140.89.136 with HTTP; Sat, 4 Mar 2017 18:05:55 -0800 (PST) In-Reply-To: <87tw78sj34.fsf@web.de> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2607:f8b0:400d:c09::22e X-BeenThere: guile-user@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: General Guile related discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guile-user-bounces+guile-user=m.gmane.org@gnu.org Original-Sender: "guile-user" Xref: news.gmane.org gmane.lisp.guile.user:13401 Archived-At: 2017-03-05 0:44 GMT+01:00 Arne Babenhauserheide : > > David Kastrup writes: > >> Nala Ginrut writes: >> >>> I think we have to elaborate the question clearer. >>> >>> 1. How to make guile-scheme more successful? >>> I think this is similar to ask "how to make scheme more successful". >>> This is the big question to the whole scheme community. >>> >>> 2. How to make guile platform more successful? >>> I this case, let me ask a question, if we have guile-python3 >>> (compatible with most of Python3 features), and provide more >>> convenient FFI helper function to help bind more libraries in short >>> time, is it possible to attract more people from Python land? Given >>> we'll have good JIT compiler in the future. >> >> Frankly, I doubt that migration of large Python-based applications is >> going to be a thing when nobody can even be bothered with immersing >> himself in the problems with migrating LilyPond from Guile-1.8 to >> Guile-2. > > I worked on testing Lilypond with user installed Guile 2.x, does that > count? > > Just to have it recorded somewhere, here=E2=80=99s a patch to lilypond al= ong > with a copy of the bash history of the setup (cleaned up, it was many > times as long): > > ## patch > > From bd2ffea6f4c4c1ede13f5ac82d0a8ce31ccfe3c7 Mon Sep 17 00:00:00 2001 > Subject: [PATCH] Build fixes for Guile 2.1.x (not yet functional) > > --- > configure.ac | 7 ++++++- > lily/pdf-scheme.cc | 4 ++++ > scm/memory-trace.scm | 3 ++- > 3 files changed, 12 insertions(+), 2 deletions(-) > > diff --git a/configure.ac b/configure.ac > index d77ea15..393976b 100644 > --- a/configure.ac > +++ b/configure.ac > @@ -267,7 +267,12 @@ STEPMAKE_FREETYPE2(freetype2, REQUIRED, 2.1.10) > STEPMAKE_WINDOWS > > # guile executable for some scripts > -STEPMAKE_GUILE(OPTIONAL, 1.8.2, 1.9.0) > +if test "$GUILEv2" =3D "yes" > +then > + STEPMAKE_GUILE(OPTIONAL, 2.0.7, 2.2.0) > +else > + STEPMAKE_GUILE(OPTIONAL, 1.8.2, 1.9.0) > +fi > > # perl for help2man and for mf2pt1.pl > STEPMAKE_PERL(REQUIRED) > diff --git a/lily/pdf-scheme.cc b/lily/pdf-scheme.cc > index da2ce2c..f5ae70c 100644 > --- a/lily/pdf-scheme.cc > +++ b/lily/pdf-scheme.cc > @@ -91,7 +91,11 @@ LY_DEFINE (ly_encode_string_for_pdf, "ly:encode-string= -for-pdf", > * (string->utf16 str 'big) > */ > if (g) > +#if GUILEV2 > + return scm_take_locale_stringn (g, bytes_written); // scm_take_str e= ventually frees g! > +#else > return scm_take_str (g, bytes_written); // scm_take_str eventually f= rees g! > +#endif > else > return str; > } > diff --git a/scm/memory-trace.scm b/scm/memory-trace.scm > index d8ffeb9..9ebd722 100644 > --- a/scm/memory-trace.scm > +++ b/scm/memory-trace.scm > @@ -2,7 +2,8 @@ > > (define-module (scm memory-trace)) > (use-modules (lily) > - (ice-9 format)) > + (ice-9 format) > + (ice-9 threads)) > > (define-public (mtrace:start-trace freq) > (set! usecond-interval (inexact->exact (/ 1000000 freq))) > -- > 2.10.2 > > > ## bash history > > sudo emerge media-fonts/tex-gyre > sudo nano /etc/portage/package.keywords/sonstiges > sudo emerge media-fonts/tex-gyre > sudo pmerge dblatex > git clone git://git.sv.gnu.org/lilypond.git > cd lilypond/ > ./autogen.sh --prefix ~/.local --enable-guile2 > mkdir -p ~/texmf/lh > cp ~/Downloads/lhfnt35g-source.zip ~/texmf/lh/ > unzip lhfnt35g-source.zip > cd ~/texmf/source/latex/lh > latex lcyfonts.ins > latex ot2fonts.ins; latex t2ccfonts.ins > ls ~/texmf/examples/ > mkdir ~/texmf/lh > cp *sty ~/texmf/lh/ > ./autogen.sh --prefix ~/.local --enable-guile2 > sudo emerge dev-texlive/texlive-langcyrillic > sudo pmerge dev-texlive/texlive-langcyrillic > make out/lilypond-invoke-editor > cd scripts/ > /home/arne/lilypond/scripts/build/out/help2man out/lilypond-invoke-editor= --no-discard-stderr > /home/arne/lilypond/scripts/build/out/help2man out/lilypond-invoke-editor > ./autogen.sh --prefix ~/.local --enable-guile2 > make > LD_LIBRARY_PATH=3D/home/arne/.local/lib/guile/2.2/ g++ -o out/lilypond .= /out/modified-font-metric.o ./out/sequential-iterator.o ./out/hara-kiri-gro= up-spanner.o ./out/completion-note-heads-engraver.o ./out/slur-score-parame= ters.o ./out/flag.o ./out/span-arpeggio-engraver.o ./out/beam-quanting.o ./= out/dynamic-performer.o ./out/parse-scm.o ./out/tie.o ./out/bend-engraver.o= ./out/staff-spacing.o ./out/rest-collision-engraver.o ./out/simple-spacer-= scheme.o ./out/audio-item.o ./out/pdf-scheme.o ./out/paper-score.o ./out/sl= ur-configuration.o ./out/constrained-breaking.o ./out/score-engraver.o ./ou= t/unpure-pure-container.o ./out/multi-measure-rest-engraver.o ./out/system-= start-delimiter-engraver.o ./out/context-property.o ./out/freetype.o ./out/= interval-minefield.o ./out/kievan-ligature.o ./out/completion-rest-engraver= .o ./out/pure-from-neighbor-engraver.o ./out/horizontal-bracket-engraver.o = ./out/grob-closure.o ./out/default-bar-line-engraver.o ./out/control-track-= performer.o ./out/file-name-map.o ./out/audio-staff.o ./out/line-spanner.o = ./out/grob-info.o ./out/spring.o ./out/slur.o ./out/music-scheme.o ./out/pr= ogram-option.o ./out/fretboard-engraver.o ./out/hyphen-engraver.o ./out/pag= e-marker.o ./out/global-vars.o ./out/stream-event-scheme.o ./out/script-col= umn-engraver.o ./out/bezier-bow.o ./out/page-breaking-scheme.o ./out/lily-v= ersion.o ./out/repeat-tie-engraver.o ./out/tweak-engraver.o ./out/staff-sym= bol-referencer.o ./out/moment-scheme.o ./out/note-heads-engraver.o ./out/pa= per-outputter.o ./out/music-wrapper.o ./out/grob.o ./out/performance-scheme= .o ./out/bar-line.o ./out/page-turn-engraver.o ./out/dimensions-scheme.o ./= out/tab-note-heads-engraver.o ./out/piano-pedal-bracket.o ./out/spaceable-g= rob.o ./out/event-iterator.o ./out/lyric-combine-music-iterator.o ./out/per= cent-repeat-iterator.o ./out/audio-element-info.o ./out/midi-cc-announcer.o= ./out/font-metric.o ./out/note-spacing-engraver.o ./out/duration-scheme.o = ./out/accidental-placement.o ./out/music-iterator.o ./out/rhythmic-head.o .= /out/grob-array.o ./out/tab-tie-follow-engraver.o ./out/context.o ./out/dis= patcher.o ./out/scale.o ./out/chord-name-engraver.o ./out/auto-change-itera= tor.o ./out/tie-engraver.o ./out/grid-line-interface.o ./out/forbid-break-e= ngraver.o ./out/note-column.o ./out/lookup.o ./out/global-ctor.o ./out/cust= os-engraver.o ./out/piano-pedal-engraver.o ./out/simple-music-iterator.o ./= out/pitch-scheme.o ./out/mensural-ligature-engraver.o ./out/articulations.o= ./out/horizontal-bracket.o ./out/script-column.o ./out/global-context.o ./= out/slur-performer.o ./out/guile-init.o ./out/stencil-scheme.o ./out/font-s= ize-engraver.o ./out/rest-engraver.o ./out/skyline.o ./out/percent-repeat-i= tem.o ./out/enclosing-bracket.o ./out/module-scheme.o ./out/input.o ./out/p= aper-outputter-scheme.o ./out/spacing-interface.o ./out/break-align-engrave= r.o ./out/chord-tremolo-iterator.o ./out/general-scheme.o ./out/least-squar= es.o ./out/audio-element.o ./out/paper-system.o ./out/lily-lexer-scheme.o .= /out/beam.o ./out/music-sequence.o ./out/music.o ./out/stem.o ./out/relativ= e-octave-check.o ./out/keyword.o ./out/translator-ctors.o ./out/stencil-int= egral.o ./out/arpeggio-engraver.o ./out/extender-engraver.o ./out/prob-sche= me.o ./out/ligature-engraver.o ./out/lyric-hyphen.o ./out/simple-spacer.o .= /out/output-property-engraver.o ./out/drum-note-performer.o ./out/fingering= -column-engraver.o ./out/midi-item.o ./out/undead.o ./out/repeat-acknowledg= e-engraver.o ./out/grace-engraver.o ./out/figured-bass-position-engraver.o = ./out/tie-formatting-problem.o ./out/context-mod-scheme.o ./out/pfb.o ./out= /fingering-engraver.o ./out/profile.o ./out/break-alignment-interface.o ./o= ut/trill-spanner-engraver.o ./out/multi-measure-rest.o ./out/collision-engr= aver.o ./out/system-start-delimiter.o ./out/one-line-auto-height-breaking.o= ./out/minimal-page-breaking.o ./out/dot-column-engraver.o ./out/note-name-= engraver.o ./out/breathing-sign.o ./out/paper-book.o ./out/sustain-pedal.o = ./out/tie-configuration.o ./out/staff-grouper-interface.o ./out/output-def.= o ./out/nested-property.o ./out/timing-translator.o ./out/protected-scm.o .= /out/volta-bracket.o ./out/beam-performer.o ./out/beaming-pattern.o ./out/p= rob.o ./out/part-combine-engraver.o ./out/smobs.o ./out/system.o ./out/figu= red-bass-engraver.o ./out/paper-def.o ./out/performer-group.o ./out/rhythmi= c-column-engraver.o ./out/volta-engraver.o ./out/paper-column-engraver.o ./= out/scm-hash.o ./out/beam-collision-engraver.o ./out/apply-context-iterator= .o ./out/skyline-pair.o ./out/gdb.o ./out/spacing-spanner.o ./out/stanza-nu= mber-align-engraver.o ./out/line-interface.o ./out/measure-grouping-spanner= .o ./out/staff-symbol-referencer-scheme.o ./out/stem-engraver.o ./out/font-= metric-scheme.o ./out/beam-engraver.o ./out/freetype-error.o ./out/instrume= nt-name-engraver.o ./out/partial-iterator.o ./out/lily-lexer.o ./out/metron= ome-engraver.o ./out/warn-scheme.o ./out/includable-lexer.o ./out/item.o ./= out/spacing-engraver.o ./out/relocate.o ./out/pointer-group-interface.o ./o= ut/measure-grouping-engraver.o ./out/grace-music.o ./out/staff-performer.o = ./out/slur-engraver.o ./out/function-documentation.o ./out/dots.o ./out/per= former.o ./out/page-spacing.o ./out/separating-line-group-engraver.o ./out/= axis-group-interface-scheme.o ./out/box.o ./out/spacing-determine-loose-col= umns.o ./out/duration.o ./out/stencil-expression.o ./out/phrasing-slur-engr= aver.o ./out/side-position-interface.o ./out/pitch-interval.o ./out/acciden= tal.o ./out/pure-from-neighbor-interface.o ./out/optimal-page-breaking.o ./= out/spanner-break-forbid-engraver.o ./out/drum-note-engraver.o ./out/stanza= -number-engraver.o ./out/midi-walker.o ./out/ly-module.o ./out/span-bar-stu= b-engraver.o ./out/book-scheme.o ./out/grid-point-engraver.o ./out/scheme-e= ngraver.o ./out/dot-column.o ./out/note-head-scheme.o ./out/lily-imports.o = ./out/font-config-scheme.o ./out/open-type-font-scheme.o ./out/hairpin.o ./= out/quote-iterator.o ./out/ledger-line-engraver.o ./out/auto-beam-engraver.= o ./out/pango-font.o ./out/misc.o ./out/repeated-music.o ./out/figured-bass= -continuation.o ./out/grace-iterator.o ./out/cue-clef-engraver.o ./out/pang= o-select.o ./out/main.o ./out/music-wrapper-iterator.o ./out/pitch-squash-e= ngraver.o ./out/tuplet-iterator.o ./out/stencil-interpret.o ./out/key-signa= ture-interface.o ./out/pitched-trill-engraver.o ./out/score.o ./out/context= -mod.o ./out/fingering-column.o ./out/music-function-scheme.o ./out/bar-num= ber-engraver.o ./out/break-substitution.o ./out/sources.o ./out/piano-pedal= -performer.o ./out/performance.o ./out/volta-repeat-iterator.o ./out/slash-= repeat-engraver.o ./out/font-config.o ./out/lily-guile.o ./out/balloon.o ./= out/text-spanner-engraver.o ./out/bezier.o ./out/stencil.o ./out/clef.o ./o= ut/spacing-basic.o ./out/dynamic-engraver.o ./out/time-signature-engraver.o= ./out/ottava-engraver.o ./out/music-output.o ./out/lily-parser.o ./out/lig= ature-bracket-engraver.o ./out/translator-dispatch-list.o ./out/lily-parser= -scheme.o ./out/engraver-scheme.o ./out/dynamic-align-engraver.o ./out/part= -combine-iterator.o ./out/custos.o ./out/translator-scheme.o ./out/slur-sco= ring.o ./out/accidental-engraver.o ./out/rest-collision.o ./out/staff-symbo= l-engraver.o ./out/spanner.o ./out/note-column-scheme.o ./out/piano-pedal-a= lign-engraver.o ./out/clef-modifier.o ./out/note-performer.o ./out/pango-fo= nt-scheme.o ./out/melody-spanner.o ./out/tie-column.o ./out/tuplet-bracket.= o ./out/episema-engraver.o ./out/lyric-extender.o ./out/grob-property.o ./o= ut/lyric-combine-music.o ./out/vaticana-ligature.o ./out/cluster-engraver.o= ./out/instrument-switch-engraver.o ./out/part-combine-part-iterator.o ./ou= t/audio-column.o ./out/key-performer.o ./out/gregorian-ligature-engraver.o = ./out/context-specced-music-iterator.o ./out/pango-select-scheme.o ./out/tr= anslator-group.o ./out/book.o ./out/stream-event.o ./out/staff-symbol.o ./o= ut/font-interface.o ./out/lyric-engraver.o ./out/page-breaking.o ./out/engr= aver-group.o ./out/grob-smob.o ./out/grob-array-scheme.o ./out/rod.o ./out/= moment.o ./out/dispatcher-scheme.o ./out/lilypond-version.o ./out/tab-staff= -symbol-engraver.o ./out/font-select.o ./out/grob-interface-scheme.o ./out/= tuplet-engraver.o ./out/balloon-engraver.o ./out/template5.o ./out/paper-co= lumn.o ./out/script-row-engraver.o ./out/clef-engraver.o ./out/one-page-bre= aking.o ./out/midi-chunk.o ./out/context-def.o ./out/paper-score-scheme.o .= /out/axis-group-engraver.o ./out/cluster.o ./out/translator.o ./out/item-sc= heme.o ./out/double-percent-repeat-engraver.o ./out/separation-item.o ./out= /key-engraver.o ./out/keep-alive-together-engraver.o ./out/source-file.o ./= out/all-font-metrics-scheme.o ./out/self-alignment-interface.o ./out/axis-g= roup-interface.o ./out/midi-cc-performer.o ./out/input-scheme.o ./out/lyric= -performer.o ./out/grid-line-span-engraver.o ./out/glissando-engraver.o ./o= ut/event-chord-iterator.o ./out/chord-name.o ./out/spring-smob.o ./out/scor= e-performer.o ./out/paper-system-scheme.o ./out/coherent-ligature-engraver.= o ./out/context-scheme.o ./out/tie-performer.o ./out/semi-tie.o ./out/chord= -tremolo-engraver.o ./out/pitch.o ./out/listener.o ./out/percent-repeat-eng= raver.o ./out/note-head.o ./out/relative-octave-music.o ./out/note-spacing.= o ./out/dimension-cache.o ./out/spacing-loose-columns.o ./out/melody-engrav= er.o ./out/page-spacing-result.o ./out/script-engraver.o ./out/ttf.o ./out/= dot-formatting-problem.o ./out/all-font-metrics.o ./out/ledger-line-spanner= .o ./out/staff-collecting-engraver.o ./out/spacing-options.o ./out/time-sig= nature-performer.o ./out/pfb-scheme.o ./out/property-iterator.o ./out/vatic= ana-ligature-engraver.o ./out/script-interface.o ./out/score-scheme.o ./out= /one-line-page-breaking.o ./out/page-marker-scheme.o ./out/spanner-scheme.o= ./out/music-function.o ./out/ambitus-engraver.o ./out/new-fingering-engrav= er.o ./out/bar-check-iterator.o ./out/change-iterator.o ./out/context-handl= e.o ./out/parenthesis-engraver.o ./out/align-interface.o ./out/change-seque= nce-iterator.o ./out/column-x-positions.o ./out/output-def-scheme.o ./out/g= lobal-context-scheme.o ./out/tie-details.o ./out/rest.o ./out/note-collisio= n.o ./out/dot-configuration.o ./out/tempo-performer.o ./out/translator-grou= p-ctors.o ./out/ottava-bracket.o ./out/stem-tremolo.o ./out/mensural-ligatu= re.o ./out/grob-pq-engraver.o ./out/lily-modules.o ./out/page-turn-page-bre= aking.o ./out/gregorian-ligature.o ./out/engraver.o ./out/rhythmic-music-it= erator.o ./out/mark-engraver.o ./out/page-layout-problem-scheme.o ./out/ver= tical-align-engraver.o ./out/kievan-ligature-engraver.o ./out/tie-specifica= tion.o ./out/tuplet-number.o ./out/laissez-vibrer-engraver.o ./out/dots-eng= raver.o ./out/directional-element-interface.o ./out/concurrent-hairpin-engr= aver.o ./out/line-interface-scheme.o ./out/paper-book-scheme.o ./out/pointe= r-group-interface-scheme.o ./out/grob-interface.o ./out/open-type-font.o ./= out/span-bar-engraver.o ./out/midi-stream.o ./out/page-layout-problem.o ./o= ut/input-smob.o ./out/note-head-line-engraver.o ./out/bar-engraver.o ./out/= text-interface.o ./out/text-engraver.o ./out/grob-scheme.o ./out/arpeggio.o= ./out/semi-tie-column.o ./out/program-option-scheme.o ./out/footnote-engra= ver.o ./out/simultaneous-music-iterator.o ./out/breathing-sign-engraver.o .= /out/grace-spacing-engraver.o ./out/lexer.o ./out/parser.o ./out/../../flow= er/out/library.a -ldl -L/home/arne/.local/lib -L/home/arne/.local/lib/gu= ile/2.2 -lguile-2.2 -lgc -lpangoft2-1.0 -lpango-1.0 -lgobject-2.0 -lglib-2= .0 -lfontconfig -lfreetype -lfontconfig -lfreetype -lfreetype -v 2>&1 | g= rep -i lib > nm out/lilypond > LD_LIBRARY_PATH=3D~/.local/lib/ out/lilypond > GUILE_LOAD_PATH=3D$GUILE_LOAD_PATH:../:../scm LD_LIBRARY_PATH=3D~/.local/= lib/ out/lilypond > wget http://infinite-hands.draketo.de/infinite_hands_sheet.ly > wget -O mf/out/emmentaler-20.otf https://github.com/saebekassebil/subito/= raw/master/resources/gonville/lilyfonts/otf/emmentaler-20.otf > GUILE_LOAD_PATH=3D$GUILE_LOAD_PATH:.:scm LD_LIBRARY_PATH=3D~/.local/lib/ = lily/out/lilypond -I ly/ -I mf/out/ -I ps/ test.ly > cp lilypond-data_2.18.2-4.1_all.deb /tmp > scp kav:/usr/share/lilypond/2.16.2/fonts/otf/*otf mf/out/ > GUILE_LOAD_PATH=3D$GUILE_LOAD_PATH:.:scm LD_LIBRARY_PATH=3D~/.local/lib/ = lily/out/lilypond -I ly/ -I mf/out/ -I ps/ test.ly > git add configure.ac lily/general-scheme.cc lily/pdf-scheme.cc scm/memory= -trace.scm > time GUILE_LOAD_PATH=3D$GUILE_LOAD_PATH:.:scm LD_LIBRARY_PATH=3D~/.local/= lib/ lily/out/lilypond -I ly/ -I mf/out/ -I ps/ infinite_hands_sheet.ly > cat 0001-Build-fixes-for-Guile-2.1.x-not-yet-functional.patch > cat > 1 < diff --git a/lily/general-scheme.cc b/lily/general-scheme.cc > index 1168ee9..2df63fc 100644 > --- a/lily/general-scheme.cc > +++ b/lily/general-scheme.cc > @@ -275,7 +275,8 @@ LY_DEFINE (ly_protects, "ly:protects", > #if SCM_MAJOR_VERSION < 2 || SCM_MAJOR_VERSION =3D=3D 2 && SCM_MINOR_VER= SION < 1 > return scm_protects; > #else > - return programming_error ("ly:protects is not supported in Guile 2.1")= ; > + // return programming_error ("ly:protects is not supported in Guile 2.= 1"); > + return 0; // FIXME: Evil hack just to get this to build. > #endif > } > EOF > > Best wishes, > Arne > > PS: If this provides at least a small step towards guile 2 in lilypond, > it=E2=80=99s worth its while. > -- > Unpolitisch sein > hei=C3=9Ft politisch sein > ohne es zu merken Hi Arne, many thanks for your work! I'll have a closer look tomorrow (it's in the middle of the night here)... The main problem is not that we can't build lilypond with 2.0.14 or 2.1.7 Checkout the branch dev/guile-v2-work in the lilypond-repository (you will need to rebase it against current master) and you'll be able to build LilyPond with guile-2.0.13, so I'm pretty confident it will work with 2.0.14. For building with guile 2.1.7 an additional patch is needed, currently I've simply deleted all about ly:protects (brute-force, I know...). Though the perfomance of LilyPond is dramatically slowed down. Making it effectively unusable for any longer input. I'm currently testing this for builds with guile 1.8.8, 2.0.14 and 2.1.7 and will report tomorrow. Cheers, Harm