Hi Till!
I think I found the bug why the gimp-print driver does not work.
I executed the program /usr/lib/cups/filter/rastertoprinter by
hand which is normally automatically called with PPD variable
set to "/etc/cups/ppd/lp.ppd" with the following parameters:
rastertoprinter 10 katzmann test 1 0 raster
(the "raster" file was created with pstoraster < <ps-file> >raster).
As I created a new cups printer.conf I inluded that one as well:
# Printer configuration file for CUPS v1.1.3
# Written by cupsd on Wed Sep 20 11:26:37 2000
<DefaultPrinter lp>
Info Canon BJC 6000
Location Home
DeviceURI parallel:/dev/lp0
State Idle
Accepting Yes
JobSheets none none
</Printer>
ltracing the pstoraster file gives me the following:
ltrace /usr/lib/cups/filter/rastertoprinter 10 katzmann test 1 0 raster
__libc_start_main(0x08048e30, 7, 0xbffff5a4, 0x08048a70, 0x08062f84 <unfinished ...>
__register_frame_info(0x080ffc10, 0x080ffde8, 0xbffff548, 0x400c896c, 0x401898c0) =
0x40040280
getenv("PPD") = "/etc/cups/ppd/lp.ppd"
ppdOpenFile(0xbfffffb0, 11, 0x400a69d8, 10, 0x401898c0) = 0x08100000
strcmp("ps", "bjc-6000 (GIMP-Print)") = 14
strcmp("ps2", "bjc-6000 (GIMP-Print)") = 14
strcmp("pcl-340", "bjc-6000 (GIMP-Print)") = 14
strcmp("pcl-400", "bjc-6000 (GIMP-Print)") = 14
strcmp("pcl-500", "bjc-6000 (GIMP-Print)") = 14
strcmp("pcl-520", "bjc-6000 (GIMP-Print)") = 14
strcmp("pcl-501", "bjc-6000 (GIMP-Print)") = 14
strcmp("pcl-540", "bjc-6000 (GIMP-Print)") = 14
[...]
strcmp("bjc-4400", "bjc-6000 (GIMP-Print)") = -2
strcmp("bjc-6000", "bjc-6000 (GIMP-Print)") = -32
strcmp("bjc-6100", "bjc-6000 (GIMP-Print)") = 1
strcmp("bjc-7000", "bjc-6000 (GIMP-Print)") = 1
strcmp("bjc-7100", "bjc-6000 (GIMP-Print)") = 1
strcmp("bjc-8200", "bjc-6000 (GIMP-Print)") = 2
strcmp("lexmark-4076", "bjc-6000 (GIMP-Print)") = 10
fprintf(0x40187ca0, "ERROR: Fatal error: Unable to fi"...ERROR: Fatal error: Unable to
find driver named "bjc-6000 (GIMP-Print)"!
) = 73
ppdClose(0x08100000, 0x40012e70, 0xbffff578, 0x08048f1b, 0x40187ca0) = 0x081000b0
__deregister_frame_info(0x080ffc10, 0x40009dba, 0x40013fd0, 0x400a6c48, 0x08048300) =
0x080ffde8
+++ exited (status 1) +++
By comparison you see that either the following line in the ppd is wrong:
*ModelName: "bjc-6000 (GIMP-Print)"
or that the comparison is based on another entry (Though I found only
PCFileName being close to it:
*PCFileName: "bjc-6000.ppd")
To test my theory, I changed the ModelName entry and voila the error was
gone. Now I was at the stage I had been already before: Only a blank page
was printed and nothing else.
The log now contains the lines (this does not appear in the webinterface
as error message):
D [20/Sep/2000:18:02:14 +0100] PageSize = 0x0
E [20/Sep/2000:18:02:14 +0100] Unable to get media size!
E [20/Sep/2000:18:02:14 +0100] PID 18482 crashed on signal 8!
D [20/Sep/2000:18:02:16 +0100] ReadClient() 8 GET /printers/lp HTTP/1.0
From the setting you can't know that I have to set my page size to A4
(default Letter it too large for my paper and printer settings here
in germany). There seems to be a problem with that :-(( In the PPD:
*DefaultPageSize: A4
*DefaultResolution: 360dpi
*DefaultDither: AdaptHybrid
As a test I set it back to letter and now I got a result:
A complete black page instead of the wished test page. Also
it did not stop there but suddenly consumed a whole lot of
CPU and after 5 minutes waiting for continued printing I aborted.
No crash any longer as before but nothing was added into the log
anymore after the usual printout messages and a final CloseClient
message. The processes consuming cpu times were "lp" and "parallel".
Anyone out there who has made similar experiences ?
Best regards,
Reinhard Katzmann
--
E-Mail: [EMAIL PROTECTED]