Thread: [MiKTeX] MiKTeX 2.9 pdflatex hangs occasionally
MiKTeX source code moved to GitHub
Brought to you by:
csc
From: Will M. <wil...@gm...> - 2011-04-26 01:21:54
|
I'm using MiKTeX as a templating engine, generating TeX source on the fly, and then launching pdflatex.exe with an appropriate set of parameters to generate a PDF file. I'm getting an intermittent problem where a machine will decide that it's in a problem state and pdflatex will not exit. Subsequent runs of pdflatex on the same machine will also fail. I'm generating the .tex file in the Windows temporary directory, and then calling pdflatex from a C# app I wrote. The process is launched, then I wait for the process to exit for a few seconds, then I kill the process and report an error. Setting the timeout arbitrarily high (half an hour) doesn't help. Running pdflatex manually on the generated .tex file immediately produces a correct PDF file. I used Process Monitor to watch pdflatex as run through the app, and discovered that the last thing it does is open a font file. The pattern of syscalls is the same as the font files it's successfully opened before that, and the file exists. Watching the process in the Visual Studio debugger shows it's stalling in fflush(), possibly on a lock. Any ideas on what to try next are welcome. I could post the related source for my C# app, or I could install debugging symbols for MiKTeX and produce a stack trace of the failing code. |
From: Will M. <wil...@gm...> - 2011-04-27 21:53:54
|
The problem was that pdflatex was finding an error in my template, and waiting for user input from stdin. I added the -halt-on-error flag to my command line, and things started behaving as expected. On Mon, Apr 25, 2011 at 21:21, Will Murnane <wil...@gm...> wrote: > I'm using MiKTeX as a templating engine, generating TeX source on the > fly, and then launching pdflatex.exe with an appropriate set of > parameters to generate a PDF file. I'm getting an intermittent > problem where a machine will decide that it's in a problem state and > pdflatex will not exit. Subsequent runs of pdflatex on the same > machine will also fail. > > I'm generating the .tex file in the Windows temporary directory, and > then calling pdflatex from a C# app I wrote. The process is launched, > then I wait for the process to exit for a few seconds, then I kill the > process and report an error. Setting the timeout arbitrarily high > (half an hour) doesn't help. Running pdflatex manually on the > generated .tex file immediately produces a correct PDF file. > > I used Process Monitor to watch pdflatex as run through the app, and > discovered that the last thing it does is open a font file. The > pattern of syscalls is the same as the font files it's successfully > opened before that, and the file exists. Watching the process in the > Visual Studio debugger shows it's stalling in fflush(), possibly on a > lock. > > Any ideas on what to try next are welcome. I could post the related > source for my C# app, or I could install debugging symbols for MiKTeX > and produce a stack trace of the failing code. > |