Hi, I found an old thread while fighting with the problem of luatex I/O Error: Couldn't open file 'foo.pdf': Too many open files. On 15 August 2013 at 17:48, Henning Hraban Ramm wrote:
Hi again,
in my current songbook project I use t-filter with LilyPond as shown in http://wiki.contextgarden.net/LilyPond with latest beta MkIV on OSX.
Every line (system) of notes is included as its own PDF to leave the page breaking to ConTeXt. But since I have some hundred songs with each a few lines, it sums up...
I guess ConTeXt keeps every externalfigure open, since I get this error:
pages > flushing realpage 70, userpage 70 (c_helpmesee.tex structure > sectioning > TitelKlein @ level 2 : 0.83 -> Help Me See GNU LilyPond 2.16.2 ERROR: In procedure open-file: ERROR: Too many open files: "/Applications/music/LilyPond.app/Contents/Resources/bin/../share/guile/1.8/ice-9/r4rs.scm" LILYPOND > name='lilytemp/prd_alle-temp-lilypond-c_helpmesee.pdf' LILYPOND > including system no.1 LILYPOND > including system no.2 LILYPOND > including system no.3 LILYPOND > including system no.4 LILYPOND > including system no.5 ) (c_hochaufdem.tex
!LuaTeX error: xpdf: reading PDF image failed ==> Fatal error occurred, no output PDF file produced!
It works with songbook excerpts (some 30 songs). I don't understand if the error is really from LilyPond or from LuaTeX (I guess the former), and how I would be able to increase the number of possible files (in bash on OSX 10.8.4). So probably it's more a general Unix question than a ConTeXt one, but anyway...
ANALYSIS: $ ulimit -n 256 $ sysctl kern.maxfiles kern.maxfiles: 12288 $ sysctl kern.maxfilesperproc kern.maxfilesperproc: 10240
SOLUTION: $ ulimit -S -n 2048
(Properly describing a problem often helps to solve it. I send this for the records, in case someone runs into the same.)
Running "ulimit -S -n 2048" in fact solved the problem for me, but I wonder if there is any better solution. (I might even have more than 256 files open in my text editor and that one doesn't complain.) Is it possible to politely ask LuaTeX to close the files after reading them? (It's fine if that's impossible, I can still use Hraban's workaround.) Thank you, Mojca