2018-07-07 12:37:20 UTC
My wife has an HP Deskjet D1560 printer. It worked in Slackware 14.1,
but seems to not cooperate in Slackware 14.2. I'm not positive that I
haven't messed up somewhere as I didn't install in the traditional way.
But let's put those worries aside for now...
...and talk about what I think is happening. I found this in the log
Can\'t use \'defined(@array)\' (Maybe you should just omit the
defined()?) at /usr/lib/cups/filter/foomatic-rip-hplip line 1656.
CUPS, by the way, reported a filter failure.
So I looked at foomatic-rip-hplip. It is a perl script which
apparently is choking at line 1656. Sadly, I couldn't figure out what
I did observe a few things though:
1. The code at 1656 is an if-block with an else. Line 1656 is
involved in the logic to choose a route through the else. Just for fun I
tried choosing arbitrarily a route through the else and in the process
I removed the line that was choking it. Well, ha! No more filter
error. And it actually printed something. It printed one page with
two characters on it, "?%", printed at the bottom of the page.
2. I compared the foomatic-rip-hplip files of past (Slackware
14.1), present (Slackware 14.2), and future (I downloaded a newer
foomatic-rip-hplip). Well, guess what? All three were identical.
So it seems that although this script contains the code that is
failing, the onset of the problem wasn't caused by a change in the
Perhaps the solution will need a change in the script? Hmmm. We
really need to know what is happening.
I just wanted to run this up the flag pole. Have a go at it, if you
By the way I tried several times to fix the problem by selecting
different printer ppd files. Some did not cause filter failures, but
none produced printed output.
I also took a look at gs. In particular I tried "gs -h" to see if
ghostscript had a filter I could use. No luck. It seems there isn't
much available for this cheap printer.
One more thing: I *can* print from the new Slackware 14.2 to a
different printer, an HP laser printer.