Author Topic: CUPS test builds  (Read 21712 times)

Paul Smedley

  • Hero Member
  • *****
  • Posts: 2095
  • Karma: +160/-0
    • View Profile
CUPS test builds
« on: April 02, 2014, 08:57:24 am »
I haven't seen this pop up yet on the ecups-dev mailing list so posting here to get some testing..

Hi All,

I'm aware of somewhat random reports of jobs getting stuck in the print queue. I've tried to workaround these before - it seemed that data did not get correctly flushed from pipes when a process is terminated.

I noticed in the libc tracker a few days ago http://trac.netlabs.org/libc/ticket/290 and although this is marked as not a bug, it turns out there is an issue with libgcc on os2, which is supposed to be fixed in checkin http://trac.netlabs.org/libc/changeset/3855

Whilst this fix will eventually be included in an updated libc*.dll, that will only help apps built with GCC 3.3.5

Therefore, I have rebuilt gcc473.dll - available from http://smedley.id.au/gcc473.zip - this is a *MUST* for these test builds.

For now, I've rebuilt CUPS 1.4.8 (including cupsash.exe) as well as Gutenprint 5.2.9

Links are:
http://smedley.id.au/tmp/cups-1.4.8-os2-20140402.zip
http://smedley.id.au/tmp/gutenprint-5.2.9-os2-20140402.zip

If anyone is getting the random 'stuck' jobs using hplip or other filters, let me know and I'll see about getting those rebuilt too.

These fixes _may_ also explain the weirdness in http://localhost:631 too

Interested in any and all feedback.

Cheers,

Paul

G. M. Anchieri

  • Newbie
  • *
  • Posts: 24
  • Karma: +4/-0
    • View Profile
Re: CUPS test builds
« Reply #1 on: April 02, 2014, 05:51:14 pm »
Dear Paul,
I have installed your zip file and the .dll

gcc473.zip,
cups-1.4.8-os2-20140402.zip
gutenprint-5.2.9-os2-20140402.zip

after that I have printed a image using PMVIEW but I receive the message that is in the image CUPS-ERROR.jpg attached to this post, if you want other information can you post it and I can reply

Doug Bissett

  • Hero Member
  • *****
  • Posts: 1593
  • Karma: +4/-2
    • View Profile
Re: CUPS test builds
« Reply #2 on: April 02, 2014, 06:05:37 pm »
Quote
Interested in any and all feedback.

I installed gcc473 (updated)
cups-1.4.8-os2-20140402.zip
gutenprint-5.2.9-os2-20140402.zip

I should note that I am using a HP C4180 All-in-one printer, with HPLIP.

I am unable to access localhost:631. The daemon crashes with:
Code: [Select]
04-02-2014  09:51:01  SYS2070  PID 007f  TID 0001  Slot 00a4
W:\CUPS\SBIN\CUPSD.EXE
CUPSD->CUPS.__httpBIOMethods
127
in POPUPLOG.OS2.

Printing works, but something (probably USB.EXE) is using 99.9% of one CPU (bouncing between the 4 CPUs), after it finishes. I will try the older USB.EXE that has worked in the past.

Doug Bissett

  • Hero Member
  • *****
  • Posts: 1593
  • Karma: +4/-2
    • View Profile
Re: CUPS test builds
« Reply #3 on: April 02, 2014, 06:19:09 pm »
Quote
I will try the older USB.EXE that has worked in the past.

Yes, USB.EXE, dated May 26 2013 (no bldlevel information), fixes the 99.9% CPU problem. I still cannot access localhost:631 without CUPSD.EXE crashing.

I am going back to the older CUPS.

Paul Smedley

  • Hero Member
  • *****
  • Posts: 2095
  • Karma: +160/-0
    • View Profile
Re: CUPS test builds
« Reply #4 on: April 02, 2014, 09:02:44 pm »
Quote
Interested in any and all feedback.

I installed gcc473 (updated)
cups-1.4.8-os2-20140402.zip
gutenprint-5.2.9-os2-20140402.zip

I should note that I am using a HP C4180 All-in-one printer, with HPLIP.

I am unable to access localhost:631. The daemon crashes with:
Code: [Select]
04-02-2014  09:51:01  SYS2070  PID 007f  TID 0001  Slot 00a4
W:\CUPS\SBIN\CUPSD.EXE
CUPSD->CUPS.__httpBIOMethods
127
in POPUPLOG.OS2.

Printing works, but something (probably USB.EXE) is using 99.9% of one CPU (bouncing between the 4 CPUs), after it finishes. I will try the older USB.EXE that has worked in the past.

Looks like an old cups.dll in libpath.

Doug Bissett

  • Hero Member
  • *****
  • Posts: 1593
  • Karma: +4/-2
    • View Profile
Re: CUPS test builds
« Reply #5 on: April 02, 2014, 11:24:16 pm »
Quote
Looks like an old cups.dll in libpath.

Well, yes, and no. The older CUPS install put CUPS.DLL in \cups\sbin The new one unzips it in \cups\lib. I unzipped over top of my old setup (not wanting to have to configure it again). Neither of those paths is in my LibPath. So, it seems to have found the old one in \cups\sbin. Okay, I renamed that one, and tried again. CUPSD.EXE wouldn't start, so I moved the new one to \cups\sbin. Now, it seems to be working properly.

Thanks for the hint...

Doug Bissett

  • Hero Member
  • *****
  • Posts: 1593
  • Karma: +4/-2
    • View Profile
Re: CUPS test builds
« Reply #6 on: April 03, 2014, 12:02:47 am »
USB.EXE, dated May 26 2013 (no bldlevel information), is still required, to fix the 99.9% CPU problem.

Paul Smedley

  • Hero Member
  • *****
  • Posts: 2095
  • Karma: +160/-0
    • View Profile
Re: CUPS test builds
« Reply #7 on: April 03, 2014, 12:24:10 am »
USB.EXE, dated May 26 2013 (no bldlevel information), is still required, to fix the 99.9% CPU problem.

Can you check what gcc*.dll that one uses (or it might be statically linked). chkdll32 usb.exe

Paul Smedley

  • Hero Member
  • *****
  • Posts: 2095
  • Karma: +160/-0
    • View Profile
Re: CUPS test builds
« Reply #8 on: April 03, 2014, 12:25:01 am »
Quote
Looks like an old cups.dll in libpath.

Well, yes, and no. The older CUPS install put CUPS.DLL in \cups\sbin The new one unzips it in \cups\lib. I unzipped over top of my old setup (not wanting to have to configure it again). Neither of those paths is in my LibPath. So, it seems to have found the old one in \cups\sbin. Okay, I renamed that one, and tried again. CUPSD.EXE wouldn't start, so I moved the new one to \cups\sbin. Now, it seems to be working properly.

Thanks for the hint...

OK, that's a packaging snafu - will fix that asap and replace the zip....

Doug Bissett

  • Hero Member
  • *****
  • Posts: 1593
  • Karma: +4/-2
    • View Profile
Re: CUPS test builds
« Reply #9 on: April 03, 2014, 03:18:40 am »
Quote
USB.EXE, dated May 26 2013 (no bldlevel information), is still required, to fix the 99.9% CPU problem.
Can you check what gcc*.dll that one uses (or it might be statically linked). chkdll32 usb.exe

Code: [Select]
[W:\CUPS\LIB\CUPS\BACKEND]chkdll32 W:\cups\lib\cups\backend\usb.exe
Loading DLL 'libc065' --> C:\ECS\DLL\LIBC065.DLL.
Loading DLL 'libusb10' --> C:\ECS\DLL\LIBUSB10.DLL.
Loading DLL 'gcc446' --> C:\ECS\DLL\GCC446.DLL.
Loading DLL 'doscalls' --> loaded.
Loading DLL 'tcpip32' --> C:\MPTN\DLL\TCPIP32.DLL.
All DLL's used by 'W:\cups\lib\cups\backend\usb.exe' could be loaded.

Paul Smedley

  • Hero Member
  • *****
  • Posts: 2095
  • Karma: +160/-0
    • View Profile
Re: CUPS test builds
« Reply #10 on: May 18, 2014, 12:55:15 am »
Some new stuff for testing :)

Updated builds of CUPS:
v1.5.4 - http://smedley.id.au/tmp/cups-1.5.4-os2-20140512.zip
v1.6.4 - http://smedley.id.au/tmp/cups-1.6.4-os2-20140517.zip
v1.7.2 - http://smedley.id.au/tmp/cups-1.7.2-os2-20140517.zip

These all have some known issues in that the GUI cannot be used to add or modify a printer.  A printer can however be added from the command line using lpadmin

Optionally for CUPS v1.5.4, and a requirement for CUPS v1.6 and above is the cups-filters package:
http://smedley.id.au/tmp/cups-filters-1.0.41-os2-2014-05-18.zip

Take note of the readme included in the cups-filters package for important configuration information.

Join the discussion on the ecups-dev mailing list :)

David McKenna

  • Hero Member
  • *****
  • Posts: 751
  • Karma: +24/-0
    • View Profile
Re: CUPS test builds
« Reply #11 on: May 18, 2014, 03:55:14 am »
  Just in case someone decides to go right for version 1.7.2...

  The cups-filters package (required for 1.7.2) requires a copy of cups15.dll from the cups 1.5.4 package....

Paul Smedley

  • Hero Member
  • *****
  • Posts: 2095
  • Karma: +160/-0
    • View Profile
Re: CUPS test builds
« Reply #12 on: May 18, 2014, 04:36:49 am »
  Just in case someone decides to go right for version 1.7.2...

  The cups-filters package (required for 1.7.2) requires a copy of cups15.dll from the cups 1.5.4 package....
Oops didn't realise that.

For next release of cups-filters I'll look at statically linking lunches but create a dll for the cups-filters library to reduce the size of the package.

Paul Smedley

  • Hero Member
  • *****
  • Posts: 2095
  • Karma: +160/-0
    • View Profile
Re: CUPS test builds
« Reply #13 on: May 18, 2014, 11:59:06 am »
Updated cupsd.exe for 1.7.2 - seems to fix the 'add printer' issue and hopefully not break anything else (I can print a test page at least).

http://smedley.id.au/tmp/cupsd-1.7.2-os2-20140518.zip

I also slipped it into the full zip download the save others the trouble of patching.

Not well tested to see if this change breaks anything else.

Cheers,

Paul

Paul Smedley

  • Hero Member
  • *****
  • Posts: 2095
  • Karma: +160/-0
    • View Profile
Re: CUPS test builds
« Reply #14 on: May 18, 2014, 10:05:53 pm »
http://smedley.id.au/tmp/cupsd-1.7.2-os2-20140519.zip corrects an issue where if SystemGroup ws present in /cups/etc/cups/cups-file.conf, the daemon wouldn't start.