You say you're "trying to print a JPEG file".
However, the error message suggests that CUPS (the Mac OS X print subsystem) tries to run the printjob through either pstopdffilter
(a utility that converts PostScript to PDF) or through pstocupsraster
(a utility that converts PostScript to CUPS-raster).
You should first enable LogLevel debug
(edit /private/etc/cups/cupsd.conf and restart the CUPS print service).
Then, look in the CUPS log file (*/var/log/cups/error_log*) for the lines containing the following strings:
Auto-typing file...
Request file type is
Started filter
Started backend
exited with
failed with
Your findings could look similar to the following:
D [...timestamp...] [Job 9] Auto-typing file...
D [...timestamp...] [Job 9] Request file type is image/jpeg.
I [...timestamp...] [Job 9] Started filter /usr/libexec/cups/filter/imagetops (PID 25690)
I [...timestamp...] [Job 9] Started filter /usr/libexec/cups/filter/pstops (PID 25691)
I [...timestamp...] [Job 9] Started filter /usr/libexec/cups/filter/pstopdffilter (PID 25694)
I [...timestamp...] [Job 9] Started backend /usr/libexec/cups/backend/2dir (PID 25695)
D [...timestamp...] PID 25690 (/usr/libexec/cups/filter/imagetops) exited with no errors.
D [...timestamp...] PID 25691 (/usr/libexec/cups/filter/pstops) exited with no errors.
E [...timestamp...] PID 25694 (/usr/libexec/cups/filter/pstopdffilter) failed with err number -31000.
D [...timestamp...] PID 25695 (/usr/libexec/cups/backend/2dir) exited with no errors.
I said 'similar to the following' because my crystal ball is in repair right now, and you didn't provide any additional details about your print environment setup, without which it will not be possible to analyze your problem any further.
Also, look in the log file for lines that indicate a PostScript error, for example:
D [...timestamp...] [Job 9] %%[ Error: ioerror; OffendingCommand: image ]%%
D [...timestamp...] [Job 9]
D [...timestamp...] [Job 9] Stack:
D [...timestamp...] [Job 9] -dict-
D [...timestamp...] [Job 9]
D [...timestamp...] [Job 9] %%[ Flushing: rest of job (to end-of-file) will be ignored ]%%
D [...timestamp...] [Job 9]
D [...timestamp...] [Job 9] %%[ Warning: PostScript error. No PDF file produced. ] %%
In which case your input file may be faulty, may be too big or whatever...
In general, it would be important to know:
- What did the "auto-typing" function of the print service return for the print job's mime type?
- What filters have been running (if any) in the filter chain before pstopdffilter (or pstocupsraster) came into play?