Seite 1 von 2

Problem mit Texniccenter, PDFLatex und Tikzexternalize Win7

Verfasst: Sa 30. Jun 2012, 19:04
von daki
Aloa,

ich nutze Texniccenter, PDFLatex mit der neuesten Miktex Version unter Windows 7.

Dabei will ich die Plots mittels
\usetikzlibrary{external}
\tikzexternalize[prefix=figures/]
\tikzexternalize
cachen, damit sie nicht bei jedem Kompiliervorgang erneut erstellt werden müssen.

Unter Windows XP konnte ich hierfür die folgenden Zeilen in der Texniccenter Konfiguration nutzen:

C:\Program Files\MiKTeX 2.9\miktex\bin\x64\pdflatex.exe

mit dem Befehl

-max-print-line=120 -interaction=nonstopmode --shell-escape "%wm"

Unter Windows 7 funktioniert dies leider nicht, ich erhalte die folgende Fehlermeldung:
! Package tikz Error: Sorry, the system call 'pdflatex -shell-escape -halt-on-error -interaction=batchmode -jobname "fig
ures/BA-figure0" "\def\tikzexternalrealjob{BA}\input{BA}"' did NOT result in a usable output file 'figures/BA-figure0' (
expected one of .pdf:.jpg:.jpeg:.png:). Please verify that you have enabled system calls. For pdflatex, this is 'pdflate
x -shell-escape'. Sometimes it is also named 'write 18' or something like that. Or maybe the command simply failed? Erro
r messages can be found in 'figures/BA-figure0.log'. If you continue now, I'll try to typeset the picture.
Texniccenter und PDFLatex habe ich bereits mit Adminrechten gestartet, dies bringt leider keine Besserung, so dass ich vermute, dass der Fehler an anderer Stelle zu suchen...

PDFLatex, gnuplot ist über %PATH$ verfügbar, wenn ich die externalize Befehle entferne kompiliert das ganze auch sauber.

-write18 habe ich auch schon probiert, bringt ebenfalls keine Besserung...

Vielen Dank bereits im voraus,

Verfasst: Di 8. Jan 2013, 16:28
von Hagbard Celine
Ich habe das gleiche Problem unter Windows 7 mit texlive und texmaker.
Die bei mir erwähnte Datei extern-figure0.log (hier wahrscheinlich figures/BA-figure0.log) existiert nicht. Es gibt zwar einige Leute, die in anderen Foren ebenfalls das Problem schildern, doch bisher konnte ich keine Lösung finden.
Hat jemand eine Idee?
Viele Grüße,
Jonas

Verfasst: Di 8. Jan 2013, 16:35
von u_fischer
Nun, wie immer in solchen Fällen, braucht man als erstes eine vollständige Problembeschreibung. Also lauffähiges Minimalbeispiel, exakte Angaben aller Pfade und aller Optionen bei pdflatex-Aufruf.

Verfasst: Di 8. Jan 2013, 17:21
von Hagbard Celine
Hier ein Minimalbeispiel:
\documentclass{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}

\usepackage{pgfplots}

\usepgfplotslibrary{external}
\tikzexternalize

\begin{document}
\begin{tikzpicture}
	\begin{axis}
		\addplot {x^2};
	\end{axis}
\end{tikzpicture}
\end{document}
Ohne das \tikzexternalize läuft es tadellos durch. Mit dem Befehl bekomme ich in der log-Datei folgende Fehlermeldung:
! Package tikz Error: Sorry, the system call 'pdflatex -shell-escape -halt-on-e
rror -interaction=batchmode -jobname "extern-figure0" "\def\tikzexternalrealjob
{extern}\input{extern}"' did NOT result in a usable output file 'extern-figure0
' (expected one of .pdf:.jpg:.jpeg:.png:). Please verify that you have enabled
system calls. For pdflatex, this is 'pdflatex -shell-escape'. Sometimes it is a
lso named 'write 18' or something like that. Or maybe the command simply failed
? Error messages can be found in 'extern-figure0.log'. If you continue now, I'l
l try to typeset the picture.
Außerdem gibt der texmaker folgende Meldung:
Der Befehl 'pdflatex' ist entweder falsch geschrieben oder konnte nicht gefunden werden.
Kompiliert habe ich in beiden Fällen mit folgender Einstellung:
"C:/texlive/2012/bin/win32/pdflatex.exe" -interaction=nonstopmode -shell-escape %.tex
Das Ganze war mit texlive 2012 unter Windows 7.
Mit texlive 2009 unter Linux läuft es einwandfrei.

Verfasst: Mi 9. Jan 2013, 10:50
von u_fischer
Nun, das klingt danach als würde pdflatex gefunden, wenn - wie im Hauptaufruf - der vollständige Pfad benutzt wird:

C:/texlive/2012/bin/win32/pdflatex.exe

Aber nicht, wenn einfach nur "pdflatex" verwendet wird.

Ich tippe daher darauf, dass du C:/texlive/2012/bin/win32 nicht in der path-Umgebungsvariable hast.

Verfasst: Mi 9. Jan 2013, 11:09
von Hagbard Celine
Das klingt plausibel.
Kannst du mir auch sagen, wo ich den Pfad angeben muss, damit pgf ihn findet?

Verfasst: Mi 9. Jan 2013, 11:12
von u_fischer
Irgendwo in der Systemsteuerung. Google einfach nach "win7 umgebungsvariable path", oder gib "Umgebungsvariable" ins win7 Suchfeld ein.

Verfasst: Do 10. Jan 2013, 15:19
von Hagbard Celine
Das hat funktioniert. Vielen Dank!

TechniX Center Problem gelöst?

Verfasst: Fr 11. Jan 2013, 17:46
von Door
Hey ich habe das selbe Problem wie oben beschrieben mit Teknix Center.
Ob die Lösung auch dafür funktioniert hat steht da leider nicht.
Bei mir ist die Umgebungsvariable gesetzt auf:
...C:\Program Files (x86)\MiKTeX 2.9\miktex\bin\
trotzdem kriege ich weiterhin die Fehlermeldung!

Irgendwelche Vorschläge?

Verfasst: Di 1. Okt 2013, 16:23
von bosnickel
Folgendes bei den Werten einfügen

Feld 1: pdflatex

Feld 2: C:\Program Files (x86)\MiKTeX 2.9\miktex\bin