PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : \usepgfplotslibrary{external} und \tikzexternalize erzeugt keine md5-Summen mehr



Magger
29-11-2013, 20:47
Hallo,

ich habe vor etwa 3 Monaten ein größeres Dokument mit zahlreichen pgfplots-Diagrammen geschrieben. Mittels


\usepgfplotslibrary{external}
\tikzexternalize
\tikzsetexternalprefix{external_figs/}

habe ich dann alle Diagramme in eigene Dateien rausschreiben lassen, um die Kompiliergeschwindigkeit zu erhöhen. Das hat auch prima funktioniert. Sobald man den Quelltext innerhalb einer tikzpicture-Umgebung verändert hat, wurde das Bild automatisch neu erzeugt, weil zu jedem Bild eine md5-Datei mit einer Prüfsumme in der Form


\def \tikzexternallastkey {724164F068DB2CA5958B91BDC6124077}%

erzeugt wurde. Änderte sich der Quelltext, änderte sich auch die Prüfsumme und die Abbildung wurde neu erstellt.

Seit einem MikTeX-Update innerhalb der letzten 3 Monate funktioniert das Erstellen dieser md5-Summe nicht mehr. Der Rest, also das externe Ausgeben der Grafiken funktioniet immer noch prima, allerdings muss man nun bei Änderungen im Quelltext händisch die entsprechende Datei löschen, damit sie neu erstellt wird.

Warum funktioniert die Erstellung der md5-Summe nicht mehr, ich habe nichts am Quelltext geändert (deshalb auch kein Minimalbeispiel, was ich bei Bedarf aber gern nachliefere.)

Viele Grüße, Mathias

bobmalaria
29-11-2013, 22:27
hi,

eine genaue antwort kann ich dir leider nicht geben da ich das nicht weiter verfolgt hab. ich habe allerdings ähnliches festgestellt.

du kannst dir übrigens behelfen indem du mit


\tikzset{external/force remake}

die externalize library zwingst die grafiken neu zu erstellen. das geht innerhalb einer gruppe (z.b. figure-umgebung) oder global (präambel).

gruss

Magger
30-11-2013, 09:04
Danke für den Tipp mit dem force remake.

Ich habe mal ein bisschen in den sourceforge-Archiven gekramt. Interessanterweise war dieses md5-Prüfsummen-Verfahren nie offiziell im pgfplots- oder pgf-Handbuch dokumentiert. Trotzdem findet man eine Menge Foreneinträge, in denen Schalter wie


\tikzset{external/up to date check=md5}

vorgeschlagen werden. Aktuell erzeugt das bei mir eine Fehlermeldung, die sagt, dass dieser Schalter nicht existiert.

Feuersaenger
30-11-2013, 15:38
Hallo Magger,

das liegt, fuerchte ich, daran, dass dieses MD5 feature bislang immer nur Teil der "unstable" von PGF 2.10 war - und bis heute auch ist.

Sprich: damit es offiziell dokumentiert werden kann, muss PGF 3.00 rausgebracht werden - was aktuelle noch nicht geschehen ist.

Es gab eine Weile einen Rueckwaertskompatibilitaetsmodus, in dem neuere pgfplots versionenen bereits solche features mitgeliefert haben. Allerdings ist das komplex; vermutlich hat Dein paket upgrade eine neuere pgf version (vielleicht 2.10) geliefert und jetzt ersetzt pgfplots das nicht mehr.

Ich denke, die richtige Loesung waere die manuelle installation von pgf 2.10 unstable, vielleicht von http://pgf.sourceforge.net/ .

Mit liebem Gruss

Christian

Magger
01-12-2013, 22:15
Hallo Christian,

vielen Dank für den Hinweis. Dann weiß ich bescheid und werde dementsprechend von Hand eine pgf-unstable-Version installieren.

Interessanterweise muss es in der Vergangenheit ja dann mal eine unstable-Version ins MikTeX-Repository geschafft haben, denn ich habe mit Sicherheit noch nie ein pgf von Hand installiert.

Viele Grüße, Mathias

Magger
04-03-2014, 15:12
Update: In der aktuell über den MikTeX-Updater verfügbaren Version des pgf-Paketes ist das Merkmal mit den md5-Summen wieder eingebaut und aktiviert.