Summary: | GCUnrecoverable error: undefined in .currentglobal / Operand stack: --nostringval-- | ||
---|---|---|---|
Product: | Ghostscript | Reporter: | ylyco <regis.carles> |
Component: | General | Assignee: | Ken Sharp <ken.sharp> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | chris.liddell, ghostscript-bugzilla |
Priority: | P4 | ||
Version: | 9.22 | ||
Hardware: | PC | ||
OS: | Linux | ||
Customer: | Word Size: | --- | |
Attachments: |
CUPS error_log when it's ok
CUPS error_log when it's not ok packages when it's ok packages when it's not ok appout, printout, error_log Input PDF File Filter 1 Output Filter 2 Output Filter 3 Output |
Description
ylyco
2017-12-29 23:34:41 UTC
I forgot to mention : My printer is a DELL 1320c (Laser Color), but it uses the i386 driver for " FX_DocuPrint_C525_A_AP " (Fuji_Xerox-DocuPrint_C525_A_AP - Printer Driver for Fuji Xerox DocuPrint C525 A-AP ) This used to work fine, up to the upgrade to cups2.2.6/GhostScript9.22. Thanks to consider this issue. We need the input file and command line that shows the error message from ghostscript. You pmay want to refer to: https://wiki.ubuntu.com/DebuggingPrintingProblems for more information on how to get the information we need. Created attachment 14554 [details]
CUPS error_log when it's ok
Created attachment 14555 [details]
CUPS error_log when it's not ok
Created attachment 14556 [details]
packages when it's ok
Created attachment 14557 [details]
packages when it's not ok
I generated the "CUPS error_log" from the Cups administration page (http://localhost:631), with the administration tool " Print Test Page ". I used a printer Dell1320c, with the i386 driver of a Fuji_Xerox-DocuPrint_C525_A_AP - Printer Driver for Fuji Xerox DocuPrint C525 A-AP. (see attached files for details of the result) (In reply to ylyco from comment #7) > I generated the "CUPS error_log" from the Cups administration page > (http://localhost:631), with the administration tool " Print Test Page ". > > I used a printer Dell1320c, with the i386 driver of a > Fuji_Xerox-DocuPrint_C525_A_AP - Printer Driver for Fuji Xerox DocuPrint > C525 A-AP. > > (see attached files for details of the result) I'm afraid we can do nothing with the files you have sent. In order to have any chance of fixing the problem, we must first be able to reproduce it. In order to reproduce it we need the input file being sent to Ghostscript and the command line being used. The error log is no use, nor is a list of which packages you have installed. You may have to discuss this with someone in the CUPS user group, to determine how to capture the intermediate file and the Ghostscript command line. I am aware that it is possible to do this, I can't tell you how. All I can tell from this is that it 'looks like' the startup code is trying to use the internal operator .currentglobal at a time when it has been undefined. Without being able to trace the code I cannot say why that is happening. Please supply an input file and a Ghostscript command line, and I'll investigate further. Hi Ken, this is what I could generate as you need : Printer Dell1320c, but it uses a driver "FX_DocuPrint_C525_A_AP" not included in Linux Mageia distribution. The driver is a i386 RPM package. I use USB cable connected to "Internet router box" Driver: FX DocuPrint C525 A-AP v1.0 (color, 2-sided printing) Connection: socket://mafreebox.freebox.fr:9100 Defaults: job-sheets=none, none media=iso_a4_210x297mm sides=one-sided [regis@localhost ~]$ lpstat -v device for Dell1320c: socket://mafreebox.freebox.fr:9100 [regis@localhost ~]$ [root@localhost regis]# lpinfo -v network beh network http network ipp serial serial:/dev/ttyS0?baud=115200 network socket network lpd network https network ipps direct parallel:/dev/lp0 direct vnc:/ [root@localhost regis]# [root@localhost regis]# egrep 'NickName|cupsFilter' /etc/cups/ppd/Dell1320c.ppd *ShortNickName: "FX DocuPrint C525 A-AP - en" *NickName: "FX DocuPrint C525 A-AP v1.0" *cupsFilter: "application/vnd.cups-postscript 0 /usr/lib/cups/filter/FXM_PF" [root@localhost regis]# I use a system "Mageia 6" : Linux localhost 4.14.10-desktop-1.mga6 #1 SMP Sat Dec 30 01:10:25 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux I use Cups web frontend to configure and it sets up fine the printer. Nothing prints out when I run : [regis@localhost ~]$ echo Hello | lp -d Dell1320c request id is Dell1320c-527 (0 file(s)) [regis@localhost ~]$ [root@localhost regis]# cp /var/spool/cups/c00527 /tmp/print-job-data.save [root@localhost regis]# chmod a+r /tmp/print-job-data.save [root@localhost regis]# cancel -a -x Dell1320c [root@localhost regis]# cupsenable Dell1320c [root@localhost regis]# file /tmp/print-job-data.save /tmp/print-job-data.save: data [root@localhost regis]# [root@localhost regis]# gs -r50 -sPAPERSIZE=a4 -dFIXEDMEDIA /tmp/print-job-data.save GPL Ghostscript 9.22 (2017-10-04) Copyright (C) 2017 Artifex Software, Inc. All rights reserved. This software comes with NO WARRANTY: see the file PUBLIC for details. Error: /undefined in G Operand stack: Execution stack: %interp_exit .runexec2 --nostringval-- --nostringval-- --nostringval-- 2 %stopped_push --nostringval-- --nostringval-- --nostringval-- false 1 %stopped_push 2015 1 3 %oparray_pop 2014 1 3 %oparray_pop 1998 1 3 %oparray_pop 1884 1 3 %oparray_pop --nostringval-- %errorexec_pop .runexec2 --nostringval-- --nostringval-- --nostringval-- 2 %stopped_push --nostringval-- Dictionary stack: --dict:987/1684(ro)(G)-- --dict:0/20(G)-- --dict:78/200(L)-- Current allocation mode is local Current file position is 11 GPL Ghostscript 9.22: Unrecoverable error, exit code 1 [root@localhost regis]# [root@localhost cups]# [root@localhost cups]# gs -r50 -dNOPAUSE -dBATCH -sDEVICE=nullpage /tmp/print-job-data.save GPL Ghostscript 9.22 (2017-10-04) Copyright (C) 2017 Artifex Software, Inc. All rights reserved. This software comes with NO WARRANTY: see the file PUBLIC for details. Error: /undefined in G Operand stack: Execution stack: %interp_exit .runexec2 --nostringval-- --nostringval-- --nostringval-- 2 %stopped_push --nostringval-- --nostringval-- --nostringval-- false 1 %stopped_push 2015 1 3 %oparray_pop 2014 1 3 %oparray_pop 1998 1 3 %oparray_pop 1884 1 3 %oparray_pop --nostringval-- %errorexec_pop .runexec2 --nostringval-- --nostringval-- --nostringval-- 2 %stopped_push --nostringval-- Dictionary stack: --dict:988/1684(ro)(G)-- --dict:0/20(G)-- --dict:78/200(L)-- Current allocation mode is local Current file position is 11 GPL Ghostscript 9.22: Unrecoverable error, exit code 1 [root@localhost cups]# Any idea ? Is it a Ghostscript issue ? Thanks for check it out. Thet's a different error. Original error: "undefined in .currentglobal" error in comment #9: "Error: /undefined in G" FWIW, from the original error, I would guess that this is because *something* is using the non-standard Postscript operator ".currentglobal" which is Ghostscript specific, internal use only and, as of 9.22, no longer visible to normal Postscript programs. Using non-standard Postscript is a bad idea, since anything non-standard is, as in this case, subject to change. Especially daft in this case, as "currentglobal" does the same thing, and is a part of the Postscript language. (In reply to ylyco from comment #9) > Any idea ? As Chris has already pointed out in comment #10, this is a different error to the one you originally reported! > Is it a Ghostscript issue ? I can't tell because, despite being asked twice already, you still have not supplied the input you are sending to Ghostscript. Descriptions of your setup, lists of installed packages etc do not help at all. Ray pointed you (comment #2) to the URL which describes how to debug CUPS printer problems, the sections you need to read is titled "Capturing print job data" and "Getting the data which would go to the printer". One or the other of these should be the input being sent to Ghostscript. If you can't figure this out, then please ask someone in the CUPS community for help. We cannot investigate your problem without seeing what is being sent to Ghostscript. If you don't supply that information then eventually I'll get bored of seeing this in my 'open bugs' list and I will close the report. My printer is a Dell1320c, using driver "FX_DocuPrint_C525_A_AP" not included in Linux Mageia distribution. The driver is a i386 RPM package. I use USB cable connected to "Internet router box", with JetDirect/AppSocket. Driver: FX DocuPrint C525 A-AP v1.0 (color, 2-sided printing) Connection: socket://mafreebox.freebox.fr:9100 Defaults: job-sheets=none, none media=iso_a4_210x297mm sides=one-sided ****************** Network printer : ****************** --------------- [root@localhost cups]# ping mafreebox.freebox.fr PING freeplayer.freebox.fr (212.27.38.253) 56(84) bytes of data. 64 bytes from freeplayer.freebox.fr (212.27.38.253): icmp_seq=1 ttl=64 time=0.861 ms 64 bytes from freeplayer.freebox.fr (212.27.38.253): icmp_seq=2 ttl=64 time=0.695 ms ------ [root@localhost cups]# nmap mafreebox.freebox.fr Starting Nmap 7.40 ( https://nmap.org ) at 2018-01-12 10:08 CET Nmap scan report for mafreebox.freebox.fr (212.27.38.253) Host is up (0.0013s latency). rDNS record for 212.27.38.253: freeplayer.freebox.fr Not shown: 996 filtered ports PORT STATE SERVICE 80/tcp open http 554/tcp open rtsp 5678/tcp open rrac 9100/tcp open jetdirect Nmap done: 1 IP address (1 host up) scanned in 9.37 seconds [root@localhost cups]# -------------- [root@localhost regis]# /usr/lib/cups/backend/snmp [root@localhost regis]# /usr/lib/cups/backend/dnssd DEBUG: Ignoring local service Fx Couleur @ linux. DEBUG: Ignoring local service Fx Couleur @ linux. DEBUG: Ignoring local service Fx Couleur @ linux. DEBUG: Ignoring local service Fx Couleur @ linux. DEBUG: Ignoring local service Fx Couleur @ linux. DEBUG: sent=0, count=0 DEBUG: Ignoring local service Fx Couleur @ linux. DEBUG: sent=0, count=0 DEBUG: sent=0, count=0 DEBUG: sent=0, count=0 DEBUG: sent=0, count=0 [root@localhost regis]# -------------- [root@localhost regis]# /usr/lib/cups/backend/snmp mafreebox.freebox.fr [root@localhost regis]# lpinfo -v network beh direct vnc:/ network lpd network ipps network socket serial serial:/dev/ttyS0?baud=115200 network https network http network ipp direct parallel:/dev/lp0 ----- [root@localhost regis]# avahi-browse -a -v -t -r Version du serveur : avahi 0.6.32 ; nom d'hôte : linux.local Domaine E Ifce Prot Nom Type + enp3s0 IPv6 Fx Couleur @ linux Internet Printer local + enp3s0 IPv4 Fx Couleur @ linux Internet Printer local + enp3s0 IPv6 Fx Couleur @ linux _ipps._tcp local + enp3s0 IPv4 Fx Couleur @ linux _ipps._tcp local + enp3s0 IPv6 Fx Couleur @ linux UNIX Printer local + enp3s0 IPv4 Fx Couleur @ linux UNIX Printer local + enp3s0 IPv6 linux Remote Disk Management local + enp3s0 IPv4 linux Remote Disk Management local + enp3s0 IPv6 linux SSH Remote Terminal local + enp3s0 IPv4 linux SSH Remote Terminal local Échec de résolution du service « Fx Couleur @ linux » de type « _ipp._tcp » dans le domaine « local » : Temps d'attente écoulé Échec de résolution du service « Fx Couleur @ linux » de type « _ipp._tcp » dans le domaine « local » : Temps d'attente écoulé Échec de résolution du service « Fx Couleur @ linux » de type « _ipps._tcp » dans le domaine « local » : Temps d'attente écoulé Échec de résolution du service « Fx Couleur @ linux » de type « _ipps._tcp » dans le domaine « local » : Temps d'attente écoulé Échec de résolution du service « Fx Couleur @ linux » de type « _printer._tcp » dans le domaine « local » : Temps d'attente écoulé Échec de résolution du service « Fx Couleur @ linux » de type « _printer._tcp » dans le domaine « local » : Temps d'attente écoulé Échec de résolution du service « linux » de type « _udisks-ssh._tcp » dans le domaine « local » : Temps d'attente écoulé Échec de résolution du service « linux » de type « _udisks-ssh._tcp » dans le domaine « local » : Temps d'attente écoulé Échec de résolution du service « linux » de type « _ssh._tcp » dans le domaine « local » : Temps d'attente écoulé Échec de résolution du service « linux » de type « _ssh._tcp » dans le domaine « local » : Temps d'attente écoulé : c'est tout pour le moment : mémoire cache saturée ---------- [root@localhost regis]# avahi-browse -a -v -c -r Version du serveur : avahi 0.6.32 ; nom d'hôte : linux.local Domaine E Ifce Prot Nom Type + enp3s0 IPv6 Fx Couleur @ linux Internet Printer local + enp3s0 IPv4 Fx Couleur @ linux Internet Printer local + enp3s0 IPv6 Fx Couleur @ linux _ipps._tcp local + enp3s0 IPv4 Fx Couleur @ linux _ipps._tcp local + enp3s0 IPv6 Fx Couleur @ linux UNIX Printer local + enp3s0 IPv4 Fx Couleur @ linux UNIX Printer local + enp3s0 IPv6 linux Remote Disk Management local + enp3s0 IPv4 linux Remote Disk Management local + enp3s0 IPv6 linux SSH Remote Terminal local + enp3s0 IPv4 linux SSH Remote Terminal local Échec de résolution du service « Fx Couleur @ linux » de type « _ipp._tcp » dans le domaine « local » : Temps d'attente écoulé Échec de résolution du service « Fx Couleur @ linux » de type « _ipp._tcp » dans le domaine « local » : Temps d'attente écoulé Échec de résolution du service « Fx Couleur @ linux » de type « _ipps._tcp » dans le domaine « local » : Temps d'attente écoulé Échec de résolution du service « Fx Couleur @ linux » de type « _ipps._tcp » dans le domaine « local » : Temps d'attente écoulé Échec de résolution du service « Fx Couleur @ linux » de type « _printer._tcp » dans le domaine « local » : Temps d'attente écoulé Échec de résolution du service « Fx Couleur @ linux » de type « _printer._tcp » dans le domaine « local » : Temps d'attente écoulé Échec de résolution du service « linux » de type « _udisks-ssh._tcp » dans le domaine « local » : Temps d'attente écoulé Échec de résolution du service « linux » de type « _udisks-ssh._tcp » dans le domaine « local » : Temps d'attente écoulé Échec de résolution du service « linux » de type « _ssh._tcp » dans le domaine « local » : Temps d'attente écoulé Échec de résolution du service « linux » de type « _ssh._tcp » dans le domaine « local » : Temps d'attente écoulé : c'est tout pour le moment : mémoire cache saturée -------- [root@localhost regis]# ifconfig enp3s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.0.10 netmask 255.255.255.0 broadcast 192.168.0.255 inet6 fe80::76d4:35ff:feff:b4b0 prefixlen 64 scopeid 0x20<link> ether 74:d4:35:ff:b4:b0 txqueuelen 1000 (Ethernet) RX packets 1060 bytes 382746 (373.7 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 2929 bytes 427760 (417.7 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 inet6 ::1 prefixlen 128 scopeid 0x10<host> loop txqueuelen 1000 (Boucle locale) RX packets 2307 bytes 158766 (155.0 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 2307 bytes 158766 (155.0 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 ---------- [root@localhost regis]# route Table de routage IP du noyau Destination Passerelle Genmask Indic Metric Ref Use Iface default gateway 0.0.0.0 UG 10 0 0 enp3s0 link-local 0.0.0.0 255.255.0.0 U 10 0 0 enp3s0 192.168.0.0 0.0.0.0 255.255.255.0 U 10 0 0 enp3s0 [root@localhost regis]# --------- ************************* Capturing print job data ************************* [root@localhost regis]# cancel -a -x [root@localhost regis]# cupsdisable Dell1320c [root@localhost regis]# lpstat -o [root@localhost regis]# ls -l /var/spool/cups total 80 -rw-r----- 1 root lp 234 déc. 18 20:32 d00378-001 -rw-r----- 1 root lp 234 déc. 18 20:35 d00379-001 -rw-r----- 1 root lp 234 déc. 18 20:40 d00380-001 -rw-r----- 1 root lp 32 déc. 18 20:44 d00381-001 -rw-r----- 1 root lp 52876 déc. 18 20:45 d00382-001 -rw-r----- 1 root lp 234 déc. 18 21:55 d00383-001 -rw-r----- 1 root lp 234 déc. 19 08:45 d00384-001 drwxrwx--T 2 root lp 4096 janv. 12 10:31 tmp/ [root@localhost regis]# echo Hello | lp -d Dell1320c request id is Dell1320c-533 (0 file(s)) [root@localhost regis]# ls -l /var/spool/cups total 84 -rw-r----- 1 root lp 234 déc. 18 20:32 d00378-001 -rw-r----- 1 root lp 234 déc. 18 20:35 d00379-001 -rw-r----- 1 root lp 234 déc. 18 20:40 d00380-001 -rw-r----- 1 root lp 32 déc. 18 20:44 d00381-001 -rw-r----- 1 root lp 52876 déc. 18 20:45 d00382-001 -rw-r----- 1 root lp 234 déc. 18 21:55 d00383-001 -rw-r----- 1 root lp 234 déc. 19 08:45 d00384-001 -rw-r----- 1 root lp 6 janv. 12 10:39 d00533-001 drwxrwx--T 2 root lp 4096 janv. 12 10:31 tmp/ [root@localhost regis]# ls -l /var/spool/cups total 84 -rw-r----- 1 root lp 234 déc. 18 20:32 d00378-001 -rw-r----- 1 root lp 234 déc. 18 20:35 d00379-001 -rw-r----- 1 root lp 234 déc. 18 20:40 d00380-001 -rw-r----- 1 root lp 32 déc. 18 20:44 d00381-001 -rw-r----- 1 root lp 52876 déc. 18 20:45 d00382-001 -rw-r----- 1 root lp 234 déc. 18 21:55 d00383-001 -rw-r----- 1 root lp 234 déc. 19 08:45 d00384-001 -rw-r----- 1 root lp 6 janv. 12 10:39 d00533-001 drwxrwx--T 2 root lp 4096 janv. 12 10:31 tmp/ [root@localhost regis]# cp /var/spool/cups/d00533-001 ~/appout [root@localhost regis]# chmod 777 ~/appout [root@localhost regis]# cupsenable Dell1320c [root@localhost regis]# file ~/appout /root/appout: ASCII text [root@localhost regis]# cat ~/appout Hello [root@localhost regis]# ------------- ********* Note ********* When I run command " echo Hello | lp -d Dell1320c ", within the Cups "error_log", I still have : END GCUnrecoverable error: undefined in .currentglobal Operand stack: --nostringval-- -------------- I hope this time my report is good enough to study with... Do you think it's a GhostScript error ? Or is it part of Cups issue ? Thanks again (In reply to ylyco from comment #12) > I hope this time my report is good enough to study with... You still have not attached the actual files, teh directory listing is *NOT* helpful. We need to run the same input through Ghostscript that you did, in the same way. Until you send us the files containing that input, we can't do that. > Do you think it's a GhostScript error ? > Or is it part of Cups issue ? Without seeing the input file, I can't possibly tell. Please don't keep sending the rest of the CUPS information, While it might be of use to the CUPS developers we cannot use it. We need the input file and the Ghostscript configuration being used. Nothing else. Created attachment 14581 [details]
appout, printout, error_log
Sorry to bother you, but I'm not an expert in computer science, and I don't speak English fluently... This is my last shot : I join you some files, I generated after running this linux command : echo Hello | lp -d Dell1320c I don't use a specific program to generate it, but only the command line witch purpose is to print the single word " Hello ". The printer doesn't print anything, and even not react at all. So, there are some files : - Capturing print job data : appout: ' ASCII text ' type - Getting the data which would go to the printer : printout : whitch is empty - and the Cups error_log file I hope you have the elements asked this time. (In reply to ylyco from comment #15) > Sorry to bother you, but I'm not an expert in computer science, and I don't > speak English fluently... I understand that, I'm trying to be as clear as I can be. > This is my last shot : > I join you some files, I generated after running this linux command : > > echo Hello | lp -d Dell1320c > > I don't use a specific program to generate it, but only the command line > witch purpose is to print the single word " Hello ". The printer doesn't > print anything, and even not react at all. > > So, there are some files : > - Capturing print job data : > appout: ' ASCII text ' type Which just says 'Hello'. Its not PostScript > - Getting the data which would go to the printer : > printout : whitch is empty > - and the Cups error_log file Which shows me that there was some real PostScript sent to Ghostscript, and that it produced an error. Sadly it does not include the actual PostScript. > I hope you have the elements asked this time. Sorry, no. There is still no PostScript here, which is what would get sent to Ghostscript. Without seeing what is being sent to Ghostscript, I cannot investigate the problem. I suggest you contact the CUPS team and ask them for help with your problem, if you can get their help to capture the actual PostScript being sent to Ghostscript then please feel free to reopen this bug report. I thank you for your expertise. Created attachment 14810 [details]
Input PDF File
Created attachment 14811 [details]
Filter 1 Output
Created manually using filter command line:
/usr/lib/cups/filter/pdftops -level3 -origpagesizes -nocenter -r 600 d01202-001 > d01202-001.ps
Created attachment 14812 [details] Filter 2 Output Created manually using filter command line: /usr/lib/cups/filter/pstops 1202 lp 'Untitled 1.odt' 1 'Duplex=None FXColorMode=Black PageSize=A4 job-uuid=urn:uuid:ab2497cc-e80e-3957-7ba8-3a58bbcfe8f1 job-originating-host-name=localhost date-time-at-creation= date-time-at-processing= time-at-creation=1519312093 time-at-processing=1519312093 document-name-supplied=Ule705' d01202-001 > d01202-001-pstops.ps Created attachment 14813 [details]
Filter 3 Output
Created manually using the following command:
/usr/bin/gs -dDEBUG -dPARANOIDSAFER -dNOPAUSE -dBATCH -dNOMEDIAATTRS -sDEVICE=ppmraw -sstdout=%stderr -sOUTPUTFILE=%stdout d01202-001-pstops.ps > d01202-001-gs.out
The driver for the printer mentioned in this bug defines "/usr/lib/cups/filter/FXM_PF" from the driver package as the last filter.
That does call the above ghostscript command to receive the final ppmraw output to send to the printer (as far as I understood).
As one can see in this file, for whatever reason, ghostscript does not convert the file fully as it did before version 9.22. Perhaps it is a regression in the changes regarding .currentglobal handling.
I'd appreciate if you can provide any hints now to fix printing for users again. :)
(In reply to Martin S. from comment #21) > Created manually using the following command: > /usr/bin/gs -dDEBUG -dPARANOIDSAFER -dNOPAUSE -dBATCH -dNOMEDIAATTRS > -sDEVICE=ppmraw -sstdout=%stderr -sOUTPUTFILE=%stdout d01202-001-pstops.ps > > d01202-001-gs.out While I appreciate the completeness, you only need to send the input to Ghostscript, and the command line being used. > As one can see in this file, for whatever reason, ghostscript does not > convert the file fully as it did before version 9.22. Perhaps it is a > regression in the changes regarding .currentglobal handling. Nope. Its a problem with DEBUG handling. Its fixed now. > I'd appreciate if you can provide any hints now to fix printing for users > again. :) Get the current code from our Git repository, or don't use -dDEBUG in a production environment. (In reply to Ken Sharp from comment #22) > (In reply to Martin S. from comment #21) > > > As one can see in this file, for whatever reason, ghostscript does not > > convert the file fully as it did before version 9.22. Perhaps it is a > > regression in the changes regarding .currentglobal handling. > > Nope. Its a problem with DEBUG handling. Its fixed now. Thanks for the hint and sorry for the ticket noise. For anyone arriving googling here I fixed printing again by removing the "-dDEBUG" argument from the driver file "/usr/lib/cups/filter/FXM_PS2PM" which defines the ghostscript command-line. > > I'd appreciate if you can provide any hints now to fix printing for users > > again. :) > > Get the current code from our Git repository, or don't use -dDEBUG in a > production environment. Thanks, latter apparently seems to fix printing! However, manually calling ghostscript on the "Filter 3 Output File" still shows errors despite the missing debug argument: --- # /usr/bin/gs -dPARANOIDSAFER -dNOPAUSE -dBATCH -dNOMEDIAATTRS -sDEVICE=ppmraw -sstdout=%stderr -sOUTPUTFILE=%stdout d01202-001-pstops.ps > d01202-001-gs.out GPL Ghostscript 9.22 (2017-10-04) Copyright (C) 2017 Artifex Software, Inc. All rights reserved. This software comes with NO WARRANTY: see the file PUBLIC for details. Error: /undefined in obj Operand stack: 2 0 Execution stack: %interp_exit .runexec2 --nostringval-- --nostringval-- --nostringval-- 2 %stopped_push --nostringval-- --nostringval-- --nostringval-- false 1 %stopped_push 1999 1 3 %oparray_pop 1998 1 3 %oparray_pop 1982 1 3 %oparray_pop 1868 1 3 %oparray_pop --nostringval-- %errorexec_pop .runexec2 --nostringval-- --nostringval-- --nostringval-- 2 %stopped_push --nostringval-- Dictionary stack: --dict:981/1684(ro)(G)-- --dict:0/20(G)-- --dict:84/200(L)-- Current allocation mode is local Last OS error: No such file or directory Current file position is 1001 GPL Ghostscript 9.22: Unrecoverable error, exit code 1 --- This might be expected as perhaps the environment is different when being invoked in the cups filterchain (thus the no such file or directory error). I also tried to find the correct revision for the DEBUG fix but wasn't successful. I'd like to backport a patch for distro packages until the next ghostscript release. I'd appreciate if you have a git revision for me. Thank you for all the effort on this project. (In reply to Martin S. from comment #23) > However, manually calling ghostscript on the "Filter 3 Output File" still > shows errors despite the missing debug argument: > --- > # /usr/bin/gs -dPARANOIDSAFER -dNOPAUSE -dBATCH -dNOMEDIAATTRS > -sDEVICE=ppmraw -sstdout=%stderr -sOUTPUTFILE=%stdout d01202-001-pstops.ps > > d01202-001-gs.out > GPL Ghostscript 9.22 (2017-10-04) > Copyright (C) 2017 Artifex Software, Inc. All rights reserved. > This software comes with NO WARRANTY: see the file PUBLIC for details. > Error: /undefined in obj > Operand stack: > 2 0 The file attached to the report and labelled "Filter 3 Output" is the transcript of stdout from Ghostscript. Since that's not PostScript its not entirely surprising that Ghostscript throws an error trying to process it. > This might be expected as perhaps the environment is different when being > invoked in the cups filterchain (thus the no such file or directory error). I'm going to assume that you actually mean "Filter 2 Output" because that's actually a PostScript file. Indeed when I run that through Ghostscript (or indeed any other PostScript interpreter) it does throw the described error. That's because the program isn't a valid PostScript porgram. All that it contains is the original PDF file with some PostScript wrapped around it. If the PostScript program wrapped around it was sufficiently sophisticated it could process the following PDF (indeed that's how Ghostscript's ps2write and the PostScript output from Adobe Acrobat work, more or less). However it is not sufficiently sophisticated. The output looks to me like it hasn't actually been processed at all, just treated as if it were already PostScript. So no, this program isn't valid, the error is entirely correct. > I also tried to find the correct revision for the DEBUG fix but wasn't > successful. Git bisect is your friend :-) I'd like to backport a patch for distro packages until the next > ghostscript release. I'd appreciate if you have a git revision for me. The next release will be in March, its probably easier at this poitn to wait for it than to try and put together a patch which may or may not be possible depending what else has changed in the meantime. Its 'probably' this commit: http://git.ghostscript.com/?p=ghostpdl.git;a=commit;h=f0fe2481a2e9b0b632a1d4e804a5a1d27fe9c017 Hi all, today my system Mageia6 installed the Ghostscript 9.23 update : all is working fine now ! Thanks a lot. |