Author Topic: installing USB printer on OS/2 Warp 4.52  (Read 2722 times)

KevinP

  • Full Member
  • ***
  • Posts: 148
  • Karma: +3/-0
Re: installing USB printer on OS/2 Warp 4.52
« Reply #90 on: July 30, 2026, 10:21:09 pm »
Hi Kevin, OS/2 and in particular, the WPS makes extensive use of Extended Attributes. Some are minor if lost, things like where something displays on the desktop, other like this are more important, though I never knew about the issue Rich mentioned.
Best to unzip stuff on the OS/2 install with the native unzip. If needed, you can burn the zip file to an ISO if needed.

Hi, Dave.  I think I have gotten it done using the native methods.  Using them has also been part of this learning process.  Since this OS/2 computer is away from my house it has often been easier to download files on my computer that is right at hand that I use every day.  Knowing what Rich mentioned does raise a question of whether some of the problems I have experienced could be due to unzipping files on another computer, burning them to CD, and then transferring them to the OS/2 computer.

David Graser

  • Hero Member
  • *****
  • Posts: 1121
  • Karma: +150/-0
Re: installing USB printer on OS/2 Warp 4.52
« Reply #91 on: July 30, 2026, 10:26:34 pm »
I am sure unzipping on another partition with a differnt OS will cause you to loose the EA's.

Dave Yeo

  • Hero Member
  • *****
  • Posts: 6061
  • Karma: +167/-1
Re: installing USB printer on OS/2 Warp 4.52
« Reply #92 on: July 30, 2026, 11:02:52 pm »
I am sure unzipping on another partition with a differnt OS will cause you to loose the EA's.

Not necessary so. Windows does (did?) support OS/2 EA's, as a special stream on NTFS and can at least read them on FAT. Need the right zip parameters copying them over might be hard though File Sharing probably could work over the network.
Various Linux file systems support xttrs, which are mostly compatible with EA's. UTF8 instead of whichever code page. With right mount options and zip options could copy them to an OS/2 JFS partition.
Still best to stick with native.

Steven Levine

  • Full Member
  • ***
  • Posts: 155
  • Karma: +16/-0
Re: installing USB printer on OS/2 Warp 4.52
« Reply #93 on: July 31, 2026, 07:55:40 am »
It's relatively easy to transport files with required EAs even if the intermediate media or platform does not support EAs.

IBM provided EAUTIL.EXE for this purpose.  The following assumes that the source platform is running OS/2 since EATUIL is an OS/2 application.

First determine if the file has EAs that need to be preserved.  Use the DIR command to check if the file has EAs.  I will note that the LIBC runtime creates a lot of unneeded/unused EAs.  I recommend using David Azarewicz's EACLEAN utility to prune these excess EAS.  Your system will perform better.

If you have a file that has EAs that need to be preserved during transport , use EAUTIL to split the EAs to a file (i.e. /S /P), transport the files and use EAUTIL to re-join the EAs with the transported file (i.e. /J /O /P).

Since printer drivers were mentioned, I should mention that this is how a number of IBM install programs handle EAs.  The EAs are shipped in a separate file and re-joined during installation.  For example, if you inspect an printer driver installation file such as pscripten.exe, you will find it includes pscript.drv and pscript.ea.  During printer instllation, the EAs are re-joined with pscript.drv.  The installation process is a bit more complicated because there's also printer1.pak which contains the PPD data for each specific printer model supported by pscripten.exe out of the box.  During installation, some of this data will update the pscript.drv EAs,

Lars

  • Hero Member
  • *****
  • Posts: 1518
  • Karma: +79/-0
Re: installing USB printer on OS/2 Warp 4.52
« Reply #94 on: July 31, 2026, 08:55:12 am »

Hi, Pete.  I think I have re-done everything using the "conventional methods".  I downloaded the .zip file directly to the OS/2 computer and unzipped it directly into \os2\dll\psprint after I had followed the other instructions of copying and deleting existing files.  All of that seemed to go fine without any errors.  I re-installed the CUPS packages with ANPM.  There is a printer object for the Envy4500 in the Printer folder.  I also notice that there is only one CUPS port whereas before there would be two of them with one apparently being created when I created the printer under the Web interface and a second one when I created a printer under the Printer Manager.  Now when I try to print from either a word processor (Star Office 5.1) or the Print menu in the Web browser I get an error message about a failure during spooling to the CUPS server.  I tried importing the new .ppd file in Printer Manager/Drivers and got the error message:  "The PSPRINT driver or one of its required files could not be located".  I also tried importing the file under the Manage Printer menu in the Web interface and it seemed to work without error.  I am attaching a short section from the cups error log related to the last Test Page I tried to print from the Web interface.  I am also still seeing the "error 32 (Broken pipe) but not as frequently.  thanks

Looking at the cups error log:
Assuming you have installed your system on drive E: you have either one or more of these problems:
1) file E:\usr\lib\cups\filter\bannertopdf.exe does not exist. If it doesn't, you will need to go through the various CUPS (filter) RPMs and check their content looking for file "bannertopdf.exe" so that you know what RPM you will need to install in addition
2) you are lacking a "SET UNIXROOT=E:" in your config.sys
3) your klibc path mapping does not work/is not properly set up so that /@unixroot is not properly replaced with %UNIXROOT%, that is, with string "E:". If you use ArcaOS, it should properly map /@unixroot to %UNIXROOT% but for older systems (eCS), you might need to add this mapping to the klibccfg Configuration object.

Replace "E" with the drive letter on your system.
« Last Edit: July 31, 2026, 10:21:21 am by Lars »

Dave Yeo

  • Hero Member
  • *****
  • Posts: 6061
  • Karma: +167/-1
Re: installing USB printer on OS/2 Warp 4.52
« Reply #95 on: July 31, 2026, 04:34:53 pm »
Code: [Select]
>yum provides "*lib/cups/filter/bannertopdf.exe"
...
Code: [Select]
cups-filters-1.25.6-1.oc00.i686 : OpenPrinting CUPS filters and backends
Repo        : netlabs-rel
Matched from:
Filename    : /@unixroot/usr/lib/cups/filter/bannertopdf.exe

cups-filters-1.25.6-1.oc00.pentium4 : OpenPrinting CUPS filters and backends
Repo        : netlabs-rel
Matched from:
Filename    : /@unixroot/usr/lib/cups/filter/bannertopdf.exe

cups-filters-1.25.6-1.oc00.pentium4 : OpenPrinting CUPS filters and backends
Repo        : installed
Matched from:
Filename    : /@unixroot/usr/lib/cups/filter/bannertopdf.exe

KevinP

  • Full Member
  • ***
  • Posts: 148
  • Karma: +3/-0
Re: installing USB printer on OS/2 Warp 4.52
« Reply #96 on: July 31, 2026, 06:44:45 pm »
Looking at the cups error log:
Assuming you have installed your system on drive E: you have either one or more of these problems:
1) file E:\usr\lib\cups\filter\bannertopdf.exe does not exist. If it doesn't, you will need to go through the various CUPS (filter) RPMs and check their content looking for file "bannertopdf.exe" so that you know what RPM you will need to install in addition
2) you are lacking a "SET UNIXROOT=E:" in your config.sys
3) your klibc path mapping does not work/is not properly set up so that /@unixroot is not properly replaced with %UNIXROOT%, that is, with string "E:". If you use ArcaOS, it should properly map /@unixroot to %UNIXROOT% but for older systems (eCS), you might need to add this mapping to the klibccfg Configuration object.

Replace "E" with the drive letter on your system.

Lars,

It must be #3.  Yes, my system is installed on E:  #1 - \usr\lib\cups\filter\bannertopdf.exe does exist.  #2 - config.sys does have SET UNIXROOT=E:   Should there be an actual configuration file because if there is I apparently do not have one.  I have klibccfg.dll but that is all.  I have klibc-1.0.2.1 installed.

KevinP

  • Full Member
  • ***
  • Posts: 148
  • Karma: +3/-0
Re: installing USB printer on OS/2 Warp 4.52
« Reply #97 on: July 31, 2026, 07:11:46 pm »
I do have libc-0.1.14-1.oc00.pentium4 installed.

Lars

  • Hero Member
  • *****
  • Posts: 1518
  • Karma: +79/-0
Re: installing USB printer on OS/2 Warp 4.52
« Reply #98 on: July 31, 2026, 09:07:11 pm »
I assume you have ArcaOS installed.

1) there should be a file %ETC%\klibcfg.ini (your %ETC% directory would usually be E:\MPTN\ETC)
2) run "regedit2" and do File->Open Profile for file E:\MPTN\ETC\klibcfg.ini
3) it should contain an "application" REWRITE with the following keys:
    a) /etc "%ETC%"
    b) /tmp "%TMP%"
    c) /var/log "%LOGFILES%"

As a test you can add a new string key:
    d) /@unixroot "%UNIXROOT%"

which should not be necessary (as this mapping should implicitely be supported by the path rewriter hook dll) but it won't hurt to try out.

aAnd then see if that helps. Instead of editing klibcfg.ini directly you can use the "kLIBC Pathrewriters" object to set these entries (provided you have that object).

Finally, check in config.sys that you have this entry (in addition to "SET UNIXROOT..."):
SET LIBC_HOOK_DLLS=E:\SYS\DLL\PREWRITE.DLL@_kLIBInitPath!pathrewrite
or
SET LIBC_HOOK_DLLS=E:\OS2\DLL\KLIBCCFG.DLL@_kLIBInitPath!pathrewrite

where the first entry is certainly the better entry (PREWRITE.DLL fixes some major bug compared to KLIBCCFG.DLL) and should be the default on an ARCAOS system.

I you have an ARCAOS system, you should have NOT installed klibccfg_1_0_2_1.exe | klibccfg.wpi as the functionality already comes with ARCAOS.

If you use eCS or Warp 4.52, you should also no longer use klibbcfg_1_0_2_1. It is better to use my PREWRITE2.WPI in www:\\hobbesarchive.com as it also provides a PREWRITE.DLL which fixes the errors in KLIBCCFG.DLL. For Warp 4.52 you will need to set an environment variable OSDIR to point to E:\OS2\DLL so that installation can proceed.

« Last Edit: July 31, 2026, 09:39:42 pm by Lars »

KevinP

  • Full Member
  • ***
  • Posts: 148
  • Karma: +3/-0
Re: installing USB printer on OS/2 Warp 4.52
« Reply #99 on: July 31, 2026, 11:00:30 pm »
I assume you have ArcaOS installed.

I have 4.52.  I have been using that as a way to experiment and try it out before I buy ArcaOS which I plan to do eventually.

I will install your package and make the other adjustments and report back.  Thanks.

KevinP

  • Full Member
  • ***
  • Posts: 148
  • Karma: +3/-0
Re: installing USB printer on OS/2 Warp 4.52
« Reply #100 on: August 01, 2026, 05:03:30 pm »
I assume you have ArcaOS installed.

1) there should be a file %ETC%\klibcfg.ini (your %ETC% directory would usually be E:\MPTN\ETC)
2) run "regedit2" and do File->Open Profile for file E:\MPTN\ETC\klibcfg.ini
3) it should contain an "application" REWRITE with the following keys:
    a) /etc "%ETC%"
    b) /tmp "%TMP%"
    c) /var/log "%LOGFILES%"

As a test you can add a new string key:
    d) /@unixroot "%UNIXROOT%"

I do have those keys.  I tried to add the unixroot key but no window opened when I pressed the button to do that

Quote
aAnd then see if that helps. Instead of editing klibcfg.ini directly you can use the "kLIBC Pathrewriters" object to set these entries (provided you have that object).

I do not have the Pathrewriters object.  When I try to print I am still getting the "Error when spooling to CUPS server" message.

Quote
Finally, check in config.sys that you have this entry (in addition to "SET UNIXROOT..."):
SET LIBC_HOOK_DLLS=E:\SYS\DLL\PREWRITE.DLL@_kLIBInitPath!pathrewrite
or
SET LIBC_HOOK_DLLS=E:\OS2\DLL\KLIBCCFG.DLL@_kLIBInitPath!pathrewrite

where the first entry is certainly the better entry (PREWRITE.DLL fixes some major bug compared to KLIBCCFG.DLL) and should be the default on an ARCAOS system.

My config.sys has:  SET LIBC_HOOK_DLLS=E:\OS2\DLL\DLL\prewrite.dll@_kLIBCInitPath!pathrewrite
The hook installed to E:\OS2\DLL\DLL on my system.

Quote
If you use eCS or Warp 4.52, you should also no longer use klibbcfg_1_0_2_1. It is better to use my PREWRITE2.WPI in www:\\hobbesarchive.com as it also provides a PREWRITE.DLL which fixes the errors in KLIBCCFG.DLL. For Warp 4.52 you will need to set an environment variable OSDIR to point to E:\OS2\DLL so that installation can proceed.

Pete

  • Hero Member
  • *****
  • Posts: 1521
  • Karma: +21/-0
Re: installing USB printer on OS/2 Warp 4.52
« Reply #101 on: August 06, 2026, 12:48:44 am »
Hi KevinP

The "Error when spooling to CUPS server" could indicate something wrong with the cupsport settings or, possibly, cupsd not running/crashed.


Regards

Pete



KevinP

  • Full Member
  • ***
  • Posts: 148
  • Karma: +3/-0
Re: installing USB printer on OS/2 Warp 4.52
« Reply #102 on: August 06, 2026, 05:51:03 pm »
Hi KevinP

The "Error when spooling to CUPS server" could indicate something wrong with the cupsport settings or, possibly, cupsd not running/crashed.


Regards

Pete

Hi, Pete.  For the cupsport settings I have the server name as localhost.  The printer name was automatically filled as PSPRINTH.  CUPSD is in the Startup folder and so at least starts when the computer is booted up.  I worked with it a bit yesterday evening and was able to print 4-5 Test Pages from the Web interface.  That was the first time I have been able to print a Test Page repeatedly so that was good progress.  However, it still would not print from a word processor nor from the Print tab on the Web browser.  I noticed that when I print from the Web interface it shows the server as localhost:631.  I tried adding the port to the server name in the Printer Manager interface.  I did not receive the pop-up error message but it still did not print.  One thing I noticed when the Test Pages printed yesterday evening was that it only printed the top heading of the page.  Previously there was also some text at the bottom of the page (job ID number, date, etc.) but that was missing this time.  Thanks

Pete

  • Hero Member
  • *****
  • Posts: 1521
  • Karma: +21/-0
Re: installing USB printer on OS/2 Warp 4.52
« Reply #103 on: August 07, 2026, 01:54:29 pm »
Hi KevinP

The cupsport does not need a port number - simply localhost.
The cupsport CUPS printer name must be the same as the cups printer queue name. Is PSPRINTH correct? Check in the cups web interface.


Regards

Pete

KevinP

  • Full Member
  • ***
  • Posts: 148
  • Karma: +3/-0
Re: installing USB printer on OS/2 Warp 4.52
« Reply #104 on: August 07, 2026, 06:29:30 pm »
Hi KevinP

The cupsport does not need a port number - simply localhost.
The cupsport CUPS printer name must be the same as the cups printer queue name. Is PSPRINTH correct? Check in the cups web interface.


Regards

Pete

Hi, Pete

Perhaps this is where the disconnect lies, at least in part.  I will post pictures of the output of prndrv and some of the Properties from Printer Manager.  All of this information was picked up automatically during setup; I did not set any of it.  The Web interface had Envy4500 as the queue name.  That apparently comes from the Printer Name that is offered during setup through the Web interface and I selected that name.  I deleted the printer and re-installed it and this time selected PSPRINTH as the name, which then became the queue name, and selected PSPRINT1 for the "Description".  In the cupsport settings I changed the Printer Name to PSPRINTH to match the queue name shown in prndrv.  I still get the "Error during spooling to CUPS server" message when I try to print from a word process or from the Print option in the browser.  I notice that the GUI for Print Manager shows PMPRINT as the driver for the queue.  The Physical Name for the printer is PSPRINTH which I cannot change in the GUI.