• Willkommen im Forum „Archiviertes Lilypond Forum (2017)“.
 

Dies ist das Archiv des alten Forums (bis März 2017). Das aktuelle Forum ist unter lilypondforum.de zu finden.
This is the archive of the old forum (until March 2017). You can find the current forum at lilypondforum.de.

Hauptmenü

Portables LilyPond und GhostScript

Begonnen von db5fx, Sonntag, 5. Januar 2014, 21:35

Vorheriges Thema - Nächstes Thema

db5fx

Ein frohes Neues zusammen!

Ich bin dabei, mir ein portables LilyPond auf einem USB-Stick für Win (XP) zu basteln. Dabei verwende ich notepad++ und SumatraPDF, sowie ein paar eigene Batchskripte zum Compilieren mit automatischem Rücksprung in den Quelltext bei Fehlern und Rückwärtssuche aus dem PDF-Viewer.

Das klappt soweit hervorragend. Jetzt brauche ich unabhängig davon auch GhostScript.

==> Meine Frage: ist es irgendwie möglich, das GhostScript von LilyPond als Konsolenprogramm mitzubenutzen? Zwei Tage Google waren bis jetzt etwas erfolglos ...  :-\

Grüße, Andi

db5fx

Ich antworte mir mal selbst:

Zitat von: db5fx am Sonntag,  5. Januar 2014, 21:35==> Meine Frage: ist es irgendwie möglich, das GhostScript von LilyPond als Konsolenprogramm mitzubenutzen?

Ja, es geht. Ist aber umständlich.

Erstens:
gs.exe hat keine Bildschirmausgabe. Ausgaben müssen also mit gs ... > logfile.txt 2> errfile.txt umgeleitet werden.

Zweitens:
Irgendwie schafft es LilyPond, dass gs denkt, das Lilypond Verzeichnis (c:\Programme\LilyPond) sei das System-Stammverzeichnis (c:\). gs findet seine Resourcen und Fonts entsprechend.
Wird gs "von Hand" aufgerufen, so müssen alle Suchpfade mit angegeben werden, entweder als Parameter gs -I c:/Programme/LilyPond/usr/share/ghostscript/8.70/lib/;... ^
   -sFONTPATH=c:/Programme/LilyPond/usr/share/ghostscript/8.70/Resource/Font;c:windows/fonts/ ^
   ...
oder als Umgebungsvariablen: set GS_LIB=c:/Programme/LilyPond/usr/share/ghostscript/8.70/lib/;...
set GS_FONTPATH=c:/Programme/LilyPond/usr/share/ghostscript/8.70/Resource/Font;c:/windows/fonts/
gs ...


===> Neue Frage: geht das wirklich nicht einfacher? Wie macht es LilyPond?

Grüße, Andi

PS: möchte eigentlich jemand wissen, wie ich LilyPond portabilisiert habe? Wenn ja, dann stelle ich eine Anleitung rein. ;)

Arnold

Hallo,

ich habe in der Vergangenheit PS-Dateien aus einem CAD-Programm "per Kommandozeile" in PDF (oder TIFF) konvertiert.
Dazu nutzte ich den Weg mit den Umgebungsvariablen - wenn ich mich recht entsinne, macht das Lilypond genauso.

Aus dieser (Uralt)-Installation:
GS_LIB bestimmt den Suchpfad seiner Module, eventuell auch der mitgebrachten Fonts, z. Bsp.: GS_LIB=D:\gstools\gs6.01\lib;D:\gstools\fonts
GS_DLL bestimmt noch die notwendige Haupt-DLL - würde zu Problemen führen, wenn eine andere Installation (Version) von Gostscript diese schon gesetzt hätte und nicht korrigiert wird - z. Bsp.: GS_DLL=D:\gstools\gs6.01\lib\gsdll32.dll

In einem hartnäckigen Fall mußte ich sogar noch PATH (die GS-Verzeichnisse meiner Version zuerst), GS_EXE und USERPROFILE (auf ein leeres Verzeichnis) setzen, damit es lief; und GS_BIN zeigt bei mir traditionellerweise auf das Verzeichnis mit der EXE-Datei von Gostscript.

Arnold

db5fx

Hallo Arnold!

Ja ich habe mir so etwas gedacht. Allerdings scheint es bei LP einfacher zu sein, in /usr/etc/relocate/*.reloc habe ich die Hinweise gefunden, um die Pfade richtig zu setzen. Das ist wohl in lilypond.exe eincompiliert.

Jedenfalls habe ich es gut hinbekommen, das LilyPond eigene GhostScript mitzubenutzen. Nervig ist nur die Log- und Fehlerbehandlung über die std-pipes.

Grüße, Andi