Ubuntu

wrong colors on HPCLJ 3500/3600 printer after switching to 11.04

Reported by kikh on 2011-05-05
150
This bug affects 25 people
Affects Status Importance Assigned to Milestone
GS-GPL
Invalid
Medium
HPLIP
Undecided
Unassigned
PXLJR
Fix Released
Undecided
Unassigned
foomatic-db-hpijs
Invalid
Undecided
Unassigned
ghostscript (Ubuntu)
Medium
Unassigned
Precise
Undecided
Unassigned
hplip (Ubuntu)
Medium
Unassigned
Precise
Undecided
Unassigned
libjpeg6b (Debian)
Fix Released
Unknown
libjpeg6b (Ubuntu)
Medium
Unassigned
Precise
Undecided
Unassigned
libjpeg-turbo (Ubuntu)
High
Unassigned
Precise
High
Steve Langasek
pxljr (Ubuntu)
Medium
Unassigned
Precise
Undecided
Unassigned

Bug Description

[Impact]
Wrong color output when printing after the switch to libjpeg-turbo for jpeg support in Ubuntu.

[Test Case]
1. Run this command for an arbitrary pdf: gs -dFirstPage=1 -q -dBATCH -dPARANOIDSAFER -dQUIET -dNOPAUSE -sDEVICE=ijs -sIjsServer=ijs_pxljr -sDeviceManufacturer="HEWLETT-PACKARD" -sDeviceModel="hp color LaserJet 3550" -dDEVICEWIDTHPOINTS=595 -dDEVICEHEIGHTPOINTS=842 -dDuplex=false -r600 -sIjsParams=Quality:Quality=1,Quality:ColorMode=2,Quality:MediaType=0,Quality:PenSet=2,PS:MediaPosition=7 -dIjsUseOutputFD -sOutputFile=- file.pdf > /dev/null
2. Verify that you get an error message on stderr.
3. Install libjpeg-turbo8 from precise-proposed.
4. Run the command from step 1 again.
5. Verify that you no longer get an error message on stderr.

[Regression Potential]
If there are any other packages in the archive which have *buggy* symbol overrides of libjpeg, this will cause those bugs to manifest in user-visible ways.

Binary package hint: hplip

After switching to Ubuntu 11.04 my HP Color Laserjet 3600 prints with wrong colors: (light) Magenta instead of Cyan, Yellow mixed with something instead of Magenta and nothing instead of Yellow. And all colors are blinded. Please find test page attached.
Cartridges are OK, switching back to 10.10 or printing from 11.04 to printer shared on 10.10 system - all OK. Bug affected on 32 and 64 bit Ubuntu 11.04. The same results on hpijs 3.11.1 and hpcups 3.11.1 drivers. Footmatic/pxljr prints only "PCL XL error. IllegalTag"
System: Ubuntu 11.04
HPLIP: 3.11.1-2ubuntu2

kikh (kikh) wrote :
skanga71 (skanga71) wrote :

This bug affects me too.

Switching from Kubuntu 10.10 to 11.04 (64 bit) with HP Color Laserjet 3500 Foomatic/pxljr prints only "PCL XL error: Illegal Tag."

Xarafaxz (xarafaxz) wrote :

I have that nasty bug too.

You can temporary avoid the problem by switching 'Printout Mode' to 'best color'.

kikh (kikh) wrote :

Xarafaxz, thank you very much!

After switching to 'best color' mode it indeed prints correct.

tags: added: hpclj3500-3600
removed: hpclj3600
summary: - wrong colors on HPCLJ 3600 printer after switching to 11.04
+ wrong colors on HPCLJ 3500/3600 printer after switching to 11.04
Charles Profitt (cprofitt) wrote :

Using hpijs driver I get the wrong colors, but the test page works. Switching quality to '5' from '4' did not change the results.

Using the hpcups driver for the 3500n results in:

PCL XL error
  subsystem: KERNEL
  Error: IllegalDataValue
  Operator: VendorUnique
  Position 7

Using the Foomatic driver automatically generates an error pop-up and the printout error is:

PCL XL error
  subsystem: KERNEL
  Error: IllegalTag
  Operator: 0x45
  Position 7

Changed in hplip:
status: New → Confirmed
Changed in pxljr:
status: New → Confirmed
Changed in foomatic-db-hpijs:
status: New → Confirmed
Changed in hplip (Ubuntu):
status: New → Confirmed
goutam kodu (goutam-hplip) wrote :

Hi,

Please install the latest hplip-3.11.5. You can find the same at http://hplipopensource.com/hplip-web/gethplip.html. Let know us if you are facing the same on the latest.

Thanks & Regards,
Goutam Kodu

Thanks for reporting this bug and any supporting documentation. Since this bug has enough information provided for a developer to begin work, I'm going to mark it as confirmed and let them handle it from here. Thanks for taking the time to make Ubuntu better!

Changed in hplip (Ubuntu):
status: Confirmed → Triaged
importance: Undecided → Medium
Charles Profitt (cprofitt) wrote :

I just completed the install requested in #6 and the same problem happens with the test page, but regular print jobs are now working properly.

goutam kodu (goutam-hplip) wrote :

Hi,

Please post the out-put of "hp-check -t" command.

Thanks
Goutam Kodu

Charles Profitt (cprofitt) wrote :
Download full text (7.2 KiB)

HP Linux Imaging and Printing System (ver. 3.11.5)
Dependency/Version Check Utility ver. 14.3

Copyright (c) 2001-9 Hewlett-Packard Development Company, LP
This software comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to distribute it
under certain conditions. See COPYING file for more details.

Note: hp-check can be run in three modes:
1. Compile-time check mode (-c or --compile): Use this mode before compiling the
HPLIP supplied tarball (.tar.gz or .run) to determine if the proper dependencies
are installed to successfully compile HPLIP.
2. Run-time check mode (-r or --run): Use this mode to determine if a distro
supplied package (.deb, .rpm, etc) or an already built HPLIP supplied tarball
has the proper dependencies installed to successfully run.
3. Both compile- and run-time check mode (-b or --both) (Default): This mode
will check both of the above cases (both compile- and run-time dependencies).

Saving output in log file: hp-check.log

Initializing. Please wait...

---------------
| SYSTEM INFO |
---------------

Basic system information:
Linux Tardis-T61p 2.6.38-8-generic #42-Ubuntu SMP Mon Apr 11 03:31:24 UTC 2011 x86_64 x86_64 x86_64 GNU/Linux

Distribution:
ubuntu 11.04

Checking Python version...
OK, version 2.7.1 installed

Checking PyQt 4.x version...
OK, version 4.8.3 installed.

Checking for CUPS...
Status: scheduler is running
Version: 1.4.6
error_log is set to level: warn

Checking for dbus/python-dbus...
dbus daemon is running.
python-dbus version: 0.83.1

------------------------------------
| COMPILE AND RUNTIME DEPENDENCIES |
------------------------------------

Checking for dependency: CUPS - Common Unix Printing System...
OK, found.

Checking for dependency: CUPS devel- Common Unix Printing System development files...
OK, found.

Checking for dependency: CUPS image - CUPS image development files...
OK, found.

Checking for dependency: DBus - Message bus system...
OK, found.

Checking for dependency: gcc - GNU Project C and C++ Compiler...
OK, found.

Checking for dependency: GhostScript - PostScript and PDF language interpreter and previewer...
OK, found.

Checking for dependency: libcrypto - OpenSSL cryptographic library...
OK, found.

Checking for dependency: libjpeg - JPEG library...
OK, found.

Checking for dependency: libnetsnmp-devel - SNMP networking library development files...
OK, found.

Checking for dependency: libpthread - POSIX threads library...
OK, found.

Checking for dependency: libtool - Library building support services...
OK, found.

Checking for dependency: libusb - USB library...
OK, found.

Checking for dependency: make - GNU make utility to maintain groups of programs...
OK, found.

Checking for dependency: PIL - Python Imaging Library (required for commandline scanning with hp-scan)...
OK, found.

Checking for dependency: PolicyKit - Administrative policy framework...
OK, found.

Checking for dependency: PyQt 4 DBus - DBus Support for PyQt4...
OK, found.

Checking for dependency: Python DBus - Python bindings for DBus...
OK, found.

Checking for dependency: Python devel - Python developmen...

Read more...

Charles Profitt (cprofitt) wrote :
Download full text (7.6 KiB)

I then added the printer via the hp-setup again and re-ran the hp-check.

----- Begin

HP Linux Imaging and Printing System (ver. 3.11.5)
Dependency/Version Check Utility ver. 14.3

Copyright (c) 2001-9 Hewlett-Packard Development Company, LP
This software comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to distribute it
under certain conditions. See COPYING file for more details.

Note: hp-check can be run in three modes:
1. Compile-time check mode (-c or --compile): Use this mode before compiling the
HPLIP supplied tarball (.tar.gz or .run) to determine if the proper dependencies
are installed to successfully compile HPLIP.
2. Run-time check mode (-r or --run): Use this mode to determine if a distro
supplied package (.deb, .rpm, etc) or an already built HPLIP supplied tarball
has the proper dependencies installed to successfully run.
3. Both compile- and run-time check mode (-b or --both) (Default): This mode
will check both of the above cases (both compile- and run-time dependencies).

Saving output in log file: hp-check.log

Initializing. Please wait...

---------------
| SYSTEM INFO |
---------------

Basic system information:
Linux Tardis-T61p 2.6.38-8-generic #42-Ubuntu SMP Mon Apr 11 03:31:24 UTC 2011 x86_64 x86_64 x86_64 GNU/Linux

Distribution:
ubuntu 11.04

Checking Python version...
OK, version 2.7.1 installed

Checking PyQt 4.x version...
OK, version 4.8.3 installed.

Checking for CUPS...
Status: scheduler is running
Version: 1.4.6
error_log is set to level: warn

Checking for dbus/python-dbus...
dbus daemon is running.
python-dbus version: 0.83.1

------------------------------------
| COMPILE AND RUNTIME DEPENDENCIES |
------------------------------------

Checking for dependency: CUPS - Common Unix Printing System...
OK, found.

Checking for dependency: CUPS devel- Common Unix Printing System development files...
OK, found.

Checking for dependency: CUPS image - CUPS image development files...
OK, found.

Checking for dependency: DBus - Message bus system...
OK, found.

Checking for dependency: gcc - GNU Project C and C++ Compiler...
OK, found.

Checking for dependency: GhostScript - PostScript and PDF language interpreter and previewer...
OK, found.

Checking for dependency: libcrypto - OpenSSL cryptographic library...
OK, found.

Checking for dependency: libjpeg - JPEG library...
OK, found.

Checking for dependency: libnetsnmp-devel - SNMP networking library development files...
OK, found.

Checking for dependency: libpthread - POSIX threads library...
OK, found.

Checking for dependency: libtool - Library building support services...
OK, found.

Checking for dependency: libusb - USB library...
OK, found.

Checking for dependency: make - GNU make utility to maintain groups of programs...
OK, found.

Checking for dependency: PIL - Python Imaging Library (required for commandline scanning with hp-scan)...
OK, found.

Checking for dependency: PolicyKit - Administrative policy framework...
OK, found.

Checking for dependency: PyQt 4 DBus - DBus Support for PyQt4...
OK, found.

Checking for dependency: Python DBus - Python bind...

Read more...

Charles Profitt (cprofitt) wrote :

I also no longer have the ability to monitor ink levels on the printer.

kikh (kikh) wrote :
Download full text (9.1 KiB)

Goutam Kodu, thanks!

With hplip-3.11.5 and hpcups driver HPCLJ3600 prints correct. (In any quality: Draft/Normal/Best color.)

With Footmatic/pxljr again PCL XL error. IllegalTag, Operation: 0x45, Position: 7

Just in case output of hp-check:
----------
HP Linux Imaging and Printing System (ver. 3.11.5)
Dependency/Version Check Utility ver. 14.3

Copyright (c) 2001-9 Hewlett-Packard Development Company, LP
This software comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to distribute it
under certain conditions. See COPYING file for more details.

Note: hp-check can be run in three modes:
1. Compile-time check mode (-c or --compile): Use this mode before compiling the
HPLIP supplied tarball (.tar.gz or .run) to determine if the proper dependencies
are installed to successfully compile HPLIP.
2. Run-time check mode (-r or --run): Use this mode to determine if a distro
supplied package (.deb, .rpm, etc) or an already built HPLIP supplied tarball
has the proper dependencies installed to successfully run.
3. Both compile- and run-time check mode (-b or --both) (Default): This mode
will check both of the above cases (both compile- and run-time dependencies).

Saving output in log file: hp-check.log

Initializing. Please wait...

---------------
| SYSTEM INFO |
---------------

Basic system information:
Linux kikh 2.6.38-8-generic #42-Ubuntu SMP Mon Apr 11 03:31:50 UTC 2011 i686 athlon i386 GNU/Linux

Distribution:
ubuntu 11.04

Checking Python version...
OK, version 2.7.1 installed

Checking PyQt 4.x version...
OK, version 4.8.3 installed.

Checking for CUPS...
Status: планировщик запущен
Version: 1.4.6
error_log is set to level: warn

Checking for dbus/python-dbus...
dbus daemon is running.
python-dbus version: 0.83.1

------------------------------------
| COMPILE AND RUNTIME DEPENDENCIES |
------------------------------------

note: To check for compile-time only dependencies, re-run hp-check with the -c parameter (ie, hp-check -c).
note: To check for run-time only dependencies, re-run hp-check with the -r parameter (ie, hp-check -r).

Checking for dependency: CUPS - Common Unix Printing System...
OK, found.

Checking for dependency: CUPS devel- Common Unix Printing System development files...
OK, found.

Checking for dependency: CUPS image - CUPS image development files...
OK, found.

Checking for dependency: DBus - Message bus system...
OK, found.

Checking for dependency: gcc - GNU Project C and C++ Compiler...
OK, found.

Checking for dependency: GhostScript - PostScript and PDF language interpreter and previewer...
OK, found.

Checking for dependency: libcrypto - OpenSSL cryptographic library...
OK, found.

Checking for dependency: libjpeg - JPEG library...
OK, found.

Checking for dependency: libnetsnmp-devel - SNMP networking library development files...
OK, found.

Checking for dependency: libpthread - POSIX threads library...
OK, found.

Checking for dependency: libtool - Library building support services...
OK, found.

Checking for dependency: libusb - USB library...
OK, found.

Checking for dependency: make - GNU make utility to mai...

Read more...

foomatic-db-hpijs is obsolete (not maintained upstream any more), closing the task ...

Changed in foomatic-db-hpijs:
status: Confirmed → Invalid

To the HPLIP developers at HP: According to the observations in this bug report the HP Color LaserJet 35xx/36xx gives wrong color output with HPLIP 3.11.1 (both hpijs and hpcups) and correct output with 3.11.5 (hpcups at least). Can someone check what has changed and post a patch for 3.11.1 so that we can issue a Stable Release Update (SRU) for Ubuntu Natty which comes with 3.11.1? Thanks in advance.

Charles Profitt (cprofitt) wrote :

Till:

Did you need information from me as an end-user or from those who know the internals of the two packages?

Comment #15 is addressed to the upstream developers of HPLIP.

Where you could be of help is finding out whether HPLIP got broken by the packaging or whether the problem comes from upstream. You could run a live CD of Oneiric or rebuild the Oneiric package of HPLIP 3.11.5 on Natty to find out whether you can correctly print with it.

Sanjay Kumar (sanjay-kumar14) wrote :

Reply for (Comment #15)

Thanks for the observations. No special changes were done in HPLIP after 3.11.1 release for HP Color LaserJet 35xx/36xx printers. The only patch which was applied was for ghostscript > 9.0 issue and which should not affact above mentioned printers as they don't use RGBW colorspace.

Thanks,
Sanjay

Sanjay, it is possible that the problem is caused by the new Ghostscript 9.0x with color management. It seems that there is some kind of incompatibility. Can you investigate this?

Charles Profitt (cprofitt) wrote :

I have not had time to do the test requested, but will try to get to it this week. Sorry for the delay.

I can reproduce the problem of the pxljr driver: It prints correctly only in Best Printout Mode and fails with printed error messages in the other two.

Printer is the HP Color LaserJet 3600.

Download full text (3.2 KiB)

In "Draft" mode my error_log gives the following:

D [07/Jun/2011:01:40:53 +0200] [Job 680] File contains 1 pages
D [07/Jun/2011:01:40:53 +0200] [Job 680] Starting renderer with command: gs -dFi
rstPage=1 -q -dBATCH -dPARANOIDSAFER -dQUIET -dNOPAUSE -sDEVICE=ijs -sIjsServer
=ijs_pxljr -sDeviceManufacturer="HEWLETT-PACKARD" -sDeviceModel="hp color LaserJ
et 3550" -dDEVICEWIDTHPOINTS=595 -dDEVICEHEIGHTPOINTS=842 -dDuplex=false -r600 -
sIjsParams=Quality:Quality=1,Quality:ColorMode=2,Quality:MediaType=0,Quality:Pen
Set=2,PS:MediaPosition=7 -dIjsUseOutputFD -sOutputFile=- /var/spool/cups/tmp/f
oomatic-3zSoAm
D [07/Jun/2011:01:40:53 +0200] [Job 680] Starting process "kid3" (generation 1)
D [07/Jun/2011:01:40:53 +0200] [Job 680] Starting process "kid4" (generation 2)
D [07/Jun/2011:01:40:53 +0200] [Job 680] Starting process "renderer" (generation
 2)
D [07/Jun/2011:01:40:53 +0200] [Job 680] JCL: ESC%-12345X@PJL
D [07/Jun/2011:01:40:53 +0200] [Job 680] <job data>
D [07/Jun/2011:01:40:53 +0200] [Job 680]
D [07/Jun/2011:01:40:53 +0200] [Job 680] getting page header
D [07/Jun/2011:01:40:53 +0200] [Job 680] getting page header
D [07/Jun/2011:01:40:53 +0200] [Job 680] Received header for page 1: width 4758
x height 6817
D [07/Jun/2011:01:40:53 +0200] [Job 680] % IJS parameter: TopLeft = 0.1667x0.166
7
D [07/Jun/2011:01:40:53 +0200] [Job 680] % IJS parameter: PaperSize = 8.26389x11
.6944
D [07/Jun/2011:01:40:53 +0200] [Job 680] % IJS parameter: Duplex = false
D [07/Jun/2011:01:40:53 +0200] [Job 680] % IJS parameter: PS:Duplex = false
D [07/Jun/2011:01:40:53 +0200] [Job 680] % IJS parameter: PS:MediaPosition = 7
D [07/Jun/2011:01:40:53 +0200] [Job 680] % IJS parameter: Quality:PenSet = 2
D [07/Jun/2011:01:40:53 +0200] [Job 680] % IJS parameter: Quality:MediaType = 0
D [07/Jun/2011:01:40:53 +0200] [Job 680] % IJS parameter: Quality:ColorMode = 2
D [07/Jun/2011:01:40:53 +0200] [Job 680] % IJS parameter: Quality:Quality = 1
D [07/Jun/2011:01:40:53 +0200] [Job 680] % IJS parameter: DeviceModel = hp color LaserJet 3550
D [07/Jun/2011:01:40:53 +0200] [Job 680] % IJS parameter: DeviceManufacturer = HEWLETT-PACKARD
D [07/Jun/2011:01:40:53 +0200] [Job 680] % IJS parameter: OutputFD = 10
D [07/Jun/2011:01:40:53 +0200] [Job 680] PaperSize = 8.26389x11.6944
D [07/Jun/2011:01:40:53 +0200] [Job 680] Dpi not set, using default (600)
D [07/Jun/2011:01:40:53 +0200] [Job 680] PaperType not set, using default Normal (0)
D [07/Jun/2011:01:40:53 +0200] [Job 680] Copies not set, using default (1)
D [07/Jun/2011:01:40:53 +0200] [Job 680] Tumble not set, using default Off (0)
D [07/Jun/2011:01:40:53 +0200] [Job 680] Quality: Medium
D [07/Jun/2011:01:40:53 +0200] [Job 680] Bitmap size 4768x6912 (7.94667x11.52 in)
D [07/Jun/2011:01:40:53 +0200] [Job 680] Unsupported color conversion request
D [07/Jun/2011:01:40:53 +0200] [Job 680] GPL Ghostscript 9.02: Unrecoverable error, exit code 1
D [07/Jun/2011:01:40:53 +0200] [Job 680] renderer exited with status 1
D [07/Jun/2011:01:40:53 +0200] [Job 680] Possible error on renderer command line or PostScript error. Check options.Kid3 exit status: 3

Near the end of this snippet it says "Unsupported color conversion request" and Ghostsc...

Read more...

Additional remarks:

- Ghostscript is fed with PDF input data
- I am on Oneiric, with Ghostscript 9.02, so the bug still persists with this Ghostscript version. pxljr is the same in both Natty and Oneiric.

rickle (rick-hallocks) wrote :

I too have this problem, I did a fresh install of Natty to a new partition, and have only copied data files over from 10.10.
I print a test page from 11.04 using the default hpcups 3.11.1
Output Mode = Color Print Quality=Normal and the red line goes black to green, green line dark blue to white, black to blue etc.
Output mode = Color, Print Quality=Best and It just prints out a PCL XL error subsystem kernal error: IlligalDataValue, Operator VendorUnique Posisiton 7, and another blank page.

Reboot to my 10.10 and it works just fine. (although I remember with 10.10 I did have a problem printing color images in grey scale draft mode it would just print a very similar PCL XL message on the paper)

The problem can be reproduced by running the Ghostscript command line of the error_log in a terminal window with an arbitrary PDF file as input and the output redirected into an arbitrary new file:

gs -dFirstPage=1 -q -dBATCH -dPARANOIDSAFER -dQUIET -dNOPAUSE -sDEVICE=ijs -sIjsServer=ijs_pxljr -sDeviceManufacturer="HEWLETT-PACKARD" -sDeviceModel="hp color LaserJet 3550" -dDEVICEWIDTHPOINTS=595 -dDEVICEHEIGHTPOINTS=842 -dDuplex=false -r600 -sIjsParams=Quality:Quality=1,Quality:ColorMode=2,Quality:MediaType=0,Quality:PenSet=2,PS:MediaPosition=7 -dIjsUseOutputFD -sOutputFile=- file.pdf > out.prn

grepping /usr/lib/ for the error message "Unsupported color conversion request" shows that it is only in libjpeg, but the problem occurs also with PDF files which contain only text.

Changed in ghostscript (Ubuntu):
status: New → Confirmed
importance: Undecided → Medium
Changed in gs-gpl:
importance: Unknown → Medium
status: Unknown → Confirmed
Leo (leopoldo-pena) wrote :

+1 here.

Experimenting color problems in Natty with HP Color LaserJet 3600.
I cannot find the option Printout Mode> Best color anywhere.

Any fix or workaround?

Thanks

Changed in gs-gpl:
status: Confirmed → Invalid

Downgraded libjpeg62 (6b1-1ubuntu1) to 6b-16.1 from Maverick and all problems with HP CLJ 3550n are gone (at least with foomatic).

Aurimas Fišeras, thank you very much for this hint, I will forward it upstream.

Leo, you need to set up your printer with "Foomatic/pxljr" as driver, then you will have the "Printout Mode" with the "Best" setting.

loeppel (loeppel) wrote :

@Aurimas: Thanks for the hint. Works pretty good. But breaks all updates (i.e. chromium)
I've done a package with 6b-16.1 binaries but version 6b1-1ubuntu1. Just downloaded the 6b-16.1 package and changed the version number.
Download: http://up.frubar.net/800/libjpeg62_6b1-1ubuntu1_i386_FAKE.deb

As downgrading libjpeg solves the problem it is possible that the bug is in libjpeg. Therefore I have added a libjpeg62 task.

Changed in libjpeg6b (Ubuntu):
importance: Undecided → Medium
Jim Hays (haysja) wrote :

I, too, am getting the following error after an update to 11.04 when trying to print to an HP Color Laserjet 3550

PCL XL error
     Subsystem: KERNEL
     Error: IllegalTag
     Operator: 0x45
     Position: 7

andri (andri-bezzola) wrote :

I can confirm most of the above problems:

Ubuntu Natty 11.04
HP Color Laserjet 3600
hpcups 3.11.5
libjpeg62

testpage will print like #1

printing it to pdf via cups-pdf I get the real colors in pdf, printing the pdf to HPCLJ3600 i get wrong colors on paper. the workaround that has worked for me was to select 'best quality' in the print menue of adobe reader's print menu.

lpr command that works would be:
lpr -P HP_Color_LaserJet_3600 -o PageSize=Letter -o PageRegion=Letter -o Duplex=None -o InputSlot=Auto -o ColorModel=RGB -o MediaType=Plain -o OutputMode=Best -o OptionDuplex=True

Changed in libjpeg6b (Ubuntu):
status: New → Confirmed

Fixed in pxljr 1.1-0ubuntu9:

pxljr (1.1-0ubuntu9) oneiric; urgency=low

  * debian/rules, debian/control, debian/local/jpeg-6b: Include the full
    source code (only test images removed to have no binary files in debian/)
    of the last nonturbo libjpeg 6b and link it statically to make the low and
    normal quality modes work. This code does not work with newer libjpeg
    versions as they get linked dynamically. This is a temporary measure until
    pxljr gets fixed upstream. Thanks to upstream author Hin-Tak Leung for
    investigating this (LP: #777670).

 -- Till Kamppeter <email address hidden> Thu, 28 Jul 2011 19:49:23 +0200

Changed in pxljr (Ubuntu):
status: New → Fix Released
importance: Undecided → Medium

Closed Ghostscrript task as it is a libjpeg problem. Either libjpeg needs to get fixed or workarounds be done in the printer driver packages.

Changed in ghostscript (Ubuntu):
status: Confirmed → Invalid
Changed in hplip (Ubuntu):
status: Triaged → Invalid
Changed in hplip:
status: Confirmed → Invalid
Changed in pxljr:
status: Confirmed → Fix Released
Changed in libjpeg6b (Ubuntu):
status: Confirmed → Fix Committed
milestone: none → ubuntu-11.10-beta-1

Hin-Tak Leung, upstream author of the pxljr driver has found out what the problem was:

----------
I have worked out what's the problem, after looking at Ubuntu's x86_64 libjpeg build log. Recent Ubuntu adds '-Wl,-Bsymbolic-functions' to the LDFLAGS . This flag has exactly the effect I described: disallow programs to override symbols in a shared library.

There are a few past and present bugs/discussion about this:
https://lists.ubuntu.com/archives/ubuntu-devel/2008-May/025367.html
https://bugs.launchpad.net/ubuntu/+source/libxfont/+bug/230460
https://bugs.launchpad.net/ubuntu/+source/xfe/+bug/644645
and possibly others.

I guess you could ask Ubuntu's libjpeg maintainer to drop that LDFLAGS . There are some performance penalty, obviously system-wide. That depends on how much you want hplip to work (without them modifying to cope).

[...]

Hin-Tak

----------

So I rebuilt libjpeg6b with the LDFLAGS removed ("LDFLAGS= " before "./configure ..." in debian/rules) and this made HPLIP working with the HP Color LaserJet 3500/3550/3600. That's it! Thank you, Hin-Tak!

The debdiff for the change is attached. Please apply it to the Ubuntu package.

tags: added: patch

Tested the new libjpeg6b package also with the old pxljr package (1.1-0ubuntu8, without full libjpeg included and statically linked) and this works, too. so the new libjpeg package is now compatible to both pxljr and HPLIP.

Reported the libjpeg6b packaging bug also to Debian: http://bugs.debian.org/637184

Launchpad Janitor (janitor) wrote :

This bug was fixed in the package libjpeg6b - 6b1-1ubuntu2

---------------
libjpeg6b (6b1-1ubuntu2) oneiric; urgency=low

  * debian/rules: Remove "-Bsymbolic-functions" from LDFLAGS, as this flag
    breaks the libjpeg use by HPLIP and pxljr, in both cases for printing
    on the HP Color LaserJet 3500/3550/3600 (LP: #777670).
 -- Till Kamppeter <email address hidden> Mon, 8 Aug 2011 19:57:23 +0200

Changed in libjpeg6b (Ubuntu):
status: Fix Committed → Fix Released
Changed in libjpeg6b (Debian):
status: Unknown → New
ligaard (kasperligaard) wrote :

Is the plan to release a bugfixed package for Ubuntu 11.04?

Changed in libjpeg6b (Debian):
status: New → Fix Released

pxljr regressed in 12.04.

Command mentioned in comment #26 returns "Unsupported color conversion request".
HP CLJ 3550 prints wrong colors again with this driver.

Foomatic workaround still works.

Changed in libjpeg6b (Ubuntu):
status: Fix Released → Triaged
importance: Medium → High
milestone: ubuntu-11.10-beta-1 → precise-updates

Reopened libjpeg6b task. Seems that changes in the libjpeg6b package or in the build environment (changed defaults?) make the remove-"-Bsymbolic-functions"-from-LDFLAGS fix not working any more. The new fix should be made available as SRU for Precise.

libjpeg6b is not used by pxljr any more. In precise it uses libjpeg8 (>= 8c).

Aurimas, thanks, moving tasks ...

Changed in libjpeg8 (Ubuntu):
importance: Undecided → High
milestone: none → precise-updates
status: New → Confirmed
Changed in libjpeg6b (Ubuntu):
importance: High → Medium
milestone: precise-updates → none
status: Triaged → Fix Released
Tom Gall (tom-gall) wrote :

I maintain libjpeg-turbo. In 12.04 precise use of libjpeg8 was replaced by libjpeg-turbo. I'd like to be sure that libjpeg8 really is the problem here.

Do libjpeg-turbo and libjpeg8 have the same APIs so that I can simply rebuild the packages (pxljr and hplip) with libjpeg-turbo to test whether libjpeg-turbo fixes the bug?

Tom Gall (tom-gall) wrote :

 libjpeg-turbo is drop in compatible with libjpeg8. You shouldn't need to recompile.

Tom, can you tell the users here then how to make the HPLIP (/usr/lib/cups/filter/hpcups) and pxljr packages use libjpeg-turbo instead of libjpeg8, so that they can test whether this helps?

Can you also tell me what to change on the pxljr and hplip packages so that they use libjpeg-turbo? Thanks.

Jeroen Meijer (jmeijer) wrote :

I am probably not much of help here, but I can confirm printing is broken indeed after the upgrade to 12.04, and worse than the "off colors"earlier. When I print from the image viewer, the printer (3600) totally gives up with a PCL XL error (IllegalTag on operator 0x45). The only way right now to print a jpg is to print it to a pdf first, then print that pdf.

If there is anything I can contribute through testing, please let me know.

karlwilbur (karlwilbur) wrote :

I know that this may ont help with a fix, but it might help others looking for a workaround.

I have a HP Color LaserJet 3600. I am running 12.04.

I was using this driver:
HP Color LaserJet 3600 Foomatic/pxljr (en)

On every print I was getting only:
PCL XL error
    Subsystem :KERNEL
    Error: IllegalTag
    Operator: 0x45
    Position: 7

I switched to:
HP Color LaserJet 3600, hpcups 3.12.2

I am printing fine now.

I have the following libjpeg installed:
libjpeg62 6b1-2ubuntu1
libjpeg8 8c-2ubuntu7
libjpeg-turbo8 1.1.90+svn733-0ubuntu4

Jeroen Meijer (jmeijer) wrote :

Thanks @karlwilbur. I tried the same (mine is a 3600N), but it didn't solve anything. The error changed from

PCL XL error
    Subsystem :KERNEL
    Error: IllegalTag
    Operator: 0x45
    Position: 7

To

PCL XL error
    Subsystem :KERNEL
    Error: IllegalDataValue
    Operator: 0x45
    Position: 7

Darn host-based printing systems ;)

Andreas Korth (andreaskorth) wrote :

Hiho,

if I understand it correctly, the fix with libjpeg is only related to the foomatic triver. If that is correct, either the hpcups 3.12.2 in 12.04 is still not working correctly, or the bug #977457 is not a duplicate of this one, because I can confirm the described issues with the faulty colorisation in normal printout mode while everything is working using best printout quality.

All details I’ve written in post 14 of bug #977457. I only forgot to mention that I have installed the proprietary plugin by using the command “hp-plugin -i”.

The problem is caused by libjpeg for both the Foomatic driver (pxljr) and HPLIP.

Tom, can you answer my questions of comment #49? Thanks.

Dmitry K (imissmyjuno) wrote :

Just chiming in to say that on both 11.10 and 12.04 my HP LaserJet 3500 is printing out the same thing, regardless of the printout mode:

PCL XL error
    Subsystem :KERNEL
    Error: IllegalTag
    Operator: 0x45
    Position: 7

Will try one of the suggestions here later today.

Steve Langasek (vorlon) on 2012-07-10
affects: libjpeg8 (Ubuntu) → libjpeg-turbo (Ubuntu)
Steve Langasek (vorlon) wrote :

The change to the build flags solves the problem because hpcups and pxljr rely on being able to override jinit_color_converter. I think the fact that they're doing this points out a weakness in the libjpeg API - there should be some better way to register a callback to change the converter instead of hijacking the symbol from the library.

I think that for precise, turning off -Wl,-Bsymbolic-functions will be the right way to fix this. It's possible, but unlikely, that it will cause undesirable behavior regressions elsewhere... ultimately, it can only be a regression if some other package is *trying* to do this symbol interposition, has implemented it poorly, and users are being saved from that bug by symbolic-functions.

Changed in ghostscript (Ubuntu Precise):
status: New → Invalid
Changed in hplip (Ubuntu Precise):
status: New → Invalid
Changed in libjpeg-turbo (Ubuntu):
milestone: precise-updates → none
status: Confirmed → Triaged
Changed in libjpeg6b (Ubuntu Precise):
status: New → Fix Released
Changed in libjpeg-turbo (Ubuntu Precise):
importance: Undecided → High
status: New → Triaged

debdiff for libjperg-turbo to fix the bug in Quantal is attached. I have tested it with the Ghostscript command line from comment #26. The actual printer is not needed to reproduce the bug and verify the fix.

Steve Langasek (vorlon) on 2012-07-10
Changed in pxljr (Ubuntu Precise):
status: New → Fix Released
Changed in libjpeg-turbo (Ubuntu):
status: Triaged → Fix Committed
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package libjpeg-turbo - 1.1.90+svn733-0ubuntu6

---------------
libjpeg-turbo (1.1.90+svn733-0ubuntu6) quantal; urgency=low

  * Strip -Wl,-Bsymbolic-functions out of LDFLAGS, so that hpcups and
    pxljr can override jinit_color_converter. LP: #777670.
 -- Steve Langasek <email address hidden> Tue, 10 Jul 2012 17:03:31 +0000

Changed in libjpeg-turbo (Ubuntu):
status: Fix Committed → Fix Released
Eli Mitrani (eli-mit-g) wrote :

thank you for fixing!

how do i update my system to use the fixed versions of the libraries? do i just wait and they will be updated via apt or do i need to install something?

Changed in libjpeg-turbo (Ubuntu Precise):
status: Triaged → Fix Committed
Steve Langasek (vorlon) on 2012-07-10
description: updated
Changed in libjpeg-turbo (Ubuntu Precise):
milestone: none → ubuntu-12.04.1
Steve Langasek (vorlon) on 2012-07-10
Changed in libjpeg-turbo (Ubuntu Precise):
assignee: nobody → Steve Langasek (vorlon)
status: Fix Committed → In Progress

Applied the Quantal fix also to Precise, debdiff attached.

The fixed package for Precise will be soon available for testing in the precise-proposed package repository. We will post a comment here with instructions for installing and testing then. Please test the package as this is required to make it an official update. Thanks in advance.

Eli Mitrani, if you are using Quantal, the fix will come with the usual system updates in some hours, if you are using Precise we are preparing a Stable Release Update. We will post a comment here when the updated package is ready for testing.

Eli Mitrani (eli-mit-g) wrote :

I am using precise and will be glad to do testing once you release.

Hello kikh, or anyone else affected,

Accepted libjpeg-turbo into precise-proposed. The package will build now and be available at http://launchpad.net/ubuntu/+source/libjpeg-turbo/1.1.90+svn733-0ubuntu4.1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please change the bug tag from verification-needed to verification-done. If it does not, change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Changed in libjpeg-turbo (Ubuntu Precise):
status: In Progress → Fix Committed
tags: added: verification-needed

I have tested the proposed package and it solves the problem. Thanks for doing this SRU, Steve.

tags: added: verification-done
removed: verification-needed
Eli Mitrani (eli-mit-g) wrote :

I too have tested the package and found it solves the problem (though i was not able to get through the UBUNTU instructions for testing using aptitude).
Thank You!

kikh (kikh) wrote :

Problem solved for me. Thank you!

Launchpad Janitor (janitor) wrote :

This bug was fixed in the package libjpeg-turbo - 1.1.90+svn733-0ubuntu4.1

---------------
libjpeg-turbo (1.1.90+svn733-0ubuntu4.1) precise-proposed; urgency=low

  * Strip -Wl,-Bsymbolic-functions out of LDFLAGS, so that hpcups and
    pxljr can override jinit_color_converter. LP: #777670.
 -- Steve Langasek <email address hidden> Tue, 10 Jul 2012 17:23:30 +0000

Changed in libjpeg-turbo (Ubuntu Precise):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.