http://bugs.winehq.org/show_bug.cgi?id=17354
Summary: printing on Mac OS X fails Product: Wine Version: 1.1.14 Platform: Macintosh OS/Version: Mac OS X 10.5 Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown AssignedTo: wine-bugs@winehq.org ReportedBy: singingwolfboy@gmail.com
Noteworthy Composer v1.75 fails to find printers on when running through wine (installed via macports) on Mac OS X Leopard. When the user tells Noteworthy to print, it responds with an error window saying:
Before you can perform printer-related tasks such as page setup or printing a document, you need to install a printer. Please install one and retry.
In addition, the following message is printed to the Terminal:
fixme:winspool:WINSPOOL_EnumPrinters We don't handle PRINTER_ENUM_CONNECTIONS
However, when following the identical steps while running Noteworthy though Darwine (installed from http://thisismyinter.net/?p=47), printing works. The error message to the GUI and Terminal are not present, and the printing dialog pops up. Printing appears to work as expected.
Please note that this is NOT a Darwine bug: Darwine does this *correctly*. Ideally, the Darwine codebase for print handling should be merged into the wine codebase, so that wine can handle this correctly, as well.
http://bugs.winehq.org/show_bug.cgi?id=17354
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |printing
http://bugs.winehq.org/show_bug.cgi?id=17354
Detlef Riekenberg wine.dev@web.de changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |wine.dev@web.de
--- Comment #1 from Detlef Riekenberg wine.dev@web.de 2009-03-04 14:43:29 --- (In reply to comment #0)
Before you can perform printer-related tasks such as page setup or printing a document, you need to install a printer. Please install one and retry.
Wine was unable to detect your Printers on OS X and create entries for them in Wine.
Please attach a log from: WINEDEBUG=+loaddll,+process,+tid,+winspool wine notepad 2>&1 | tee log.txt
What CUPS version are you using? cupsd must run on your system.
Ideally, the Darwine codebase for print handling should be merged into the wine codebase, so that wine can handle this correctly, as well.
You can't compare two different MAC installations. Wine has support for LPR (/etc/printcap) and CUPS (BSD emulation tools needed). When Darwine need something different, they should have reported that years ago.
http://bugs.winehq.org/show_bug.cgi?id=17354
--- Comment #2 from David Baumgold singingwolfboy@gmail.com 2009-03-04 16:10:56 --- Created an attachment (id=19791) --> (http://bugs.winehq.org/attachment.cgi?id=19791) notepad debug
http://bugs.winehq.org/show_bug.cgi?id=17354
--- Comment #3 from David Baumgold singingwolfboy@gmail.com 2009-03-04 16:18:17 --- (In reply to comment #1)
Please attach a log from: WINEDEBUG=+loaddll,+process,+tid,+winspool wine notepad 2>&1 | tee log.txt
Attached.
What CUPS version are you using? cupsd must run on your system.
I can't seem to find the exact binary on my system, but I'm using the standard Apple CUPS that comes with Leopard. According to http://localhost:631, it is CUPS 1.3.8.
Ideally, the Darwine codebase for print handling should be merged into the wine codebase, so that wine can handle this correctly, as well.
You can't compare two different MAC installations. Wine has support for LPR (/etc/printcap) and CUPS (BSD emulation tools needed). When Darwine need something different, they should have reported that years ago.
CUPS is the standard printing system in OS X. Apple actually bought CUPS in 2007. If Wine supports CUPS, it shouldn't be hard to make whatever tweaks are necessary to get Wine and Mac OS X CUPS to play nicely. As I said, Darwine did it.
http://bugs.winehq.org/show_bug.cgi?id=17354
--- Comment #4 from Detlef Riekenberg wine.dev@web.de 2009-03-05 13:57:17 --- (In reply to comment #3)
WINEDEBUG=+loaddll,+process,+tid,+winspool wine notepad 2>&1 | tee log.txt
Attached.
0009:trace:winspool:CUPS_LoadPrinters dlopen(libcups.2.dylib, 258): image not found
Wine is unable to load the required library. When CUPS failed to load, Wine will try to open and parse "/etc/printcap" (BSD printing system) to use the Printers from there.
You must make sure, that CUPS or LPR is properly installed and configured.
If Wine supports CUPS, it shouldn't be hard to make whatever tweaks are necessary to get Wine and Mac OS X CUPS to play nicely.
Wine works with CUPS on Mac. The configuration does not play nicely
As I said, Darwine did it.
Again, a different Computer with a different configuration. You can't compare both.
http://bugs.winehq.org/show_bug.cgi?id=17354
--- Comment #5 from Detlef Riekenberg wine.dev@web.de 2009-03-05 13:59:42 ---
Wine works with CUPS on Mac. The configuration does not play nicely
Wine works with CUPS on Mac. Your configuration does not play nicely
http://bugs.winehq.org/show_bug.cgi?id=17354
--- Comment #6 from David Baumgold singingwolfboy@gmail.com 2009-03-05 19:16:16 --- (In reply to comment #4)
(In reply to comment #3)
WINEDEBUG=+loaddll,+process,+tid,+winspool wine notepad 2>&1 | tee log.txt
Attached.
0009:trace:winspool:CUPS_LoadPrinters dlopen(libcups.2.dylib, 258): image not found
Wine is unable to load the required library. When CUPS failed to load, Wine will try to open and parse "/etc/printcap" (BSD printing system) to use the Printers from there.
<pre> $ locate libcups.2.dylib /Developer/SDKs/MacOSX10.4u.sdk/usr/lib/libcups.2.dylib /Developer/SDKs/MacOSX10.5.sdk/usr/lib/libcups.2.dylib /usr/lib/libcups.2.dylib /usr/lib/zsh/libcups.2.dylib </pre> Where does Wine expect libcups.2.dylib to be located?
You must make sure, that CUPS or LPR is properly installed and configured.
As I said, Darwine did it.
Again, a different Computer with a different configuration. You can't compare both.
I don't understand what you're saying. It's exactly the same computer, with exactly the same configuration. When I try to print via wine installed via Macports, printing fails. When I try to print via Darwine-packaged wine, printing works. I'm running this on exactly the same computer, and I don't change any configuration at all: the only difference is whether I'm using Macports wine or Darwine. However, hopefully figuring out where wine expects libcups.2.dylib to be will solve the problem.
http://bugs.winehq.org/show_bug.cgi?id=17354
--- Comment #7 from Austin English austinenglish@gmail.com 2009-03-06 01:01:23 --- (In reply to comment #6)
I don't understand what you're saying. It's exactly the same computer, with exactly the same configuration. When I try to print via wine installed via Macports, printing fails. When I try to print via Darwine-packaged wine, printing works. I'm running this on exactly the same computer, and I don't change any configuration at all: the only difference is whether I'm using Macports wine or Darwine. However, hopefully figuring out where wine expects libcups.2.dylib to be will solve the problem.
Have you tried running comparing Wine and Darwine's source to see how they fix it?
http://bugs.winehq.org/show_bug.cgi?id=17354
--- Comment #8 from Detlef Riekenberg wine.dev@web.de 2009-03-06 16:34:49 --- (In reply to comment #6)
Wine is unable to load the required library. When CUPS failed to load, Wine will try to open and parse "/etc/printcap" (BSD printing system) to use the Printers from there.
$ locate libcups.2.dylib /usr/lib/libcups.2.dylib Where does Wine expect libcups.2.dylib to be located?
I have no Idea about a MAC, but Wine use dlopen, so /usr/lib/libcups.2.dylib should be fine.
Wine need a 32bit lib: $ file /usr/lib/libcups.2.dylib But when Wine can't get the Printers from CUPS, "/etc/printcap" is parsed and Wine should still find your Printers.
I have no Idea, why both methods fail. Please attach /etc/printcap
It's exactly the same computer, with exactly the same configuration. When I try to print via wine installed via Macports, printing fails. When I try to print via Darwine-packaged wine, printing works.
Sorry, i interpreted Darwine as Wine for MAC/PPC.
http://bugs.winehq.org/show_bug.cgi?id=17354
--- Comment #9 from David Baumgold singingwolfboy@gmail.com 2009-03-07 08:49:36 --- (In reply to comment #7)
Have you tried running comparing Wine and Darwine's source to see how they fix it?
Unfortunately, I wouldn't know where to start. So no, I haven't. Can you give me some pointers on where to look and what to look for?
(In reply to comment #8)
I have no Idea about a MAC, but Wine use dlopen, so /usr/lib/libcups.2.dylib should be fine.
Wine need a 32bit lib: $ file /usr/lib/libcups.2.dylib But when Wine can't get the Printers from CUPS, "/etc/printcap" is parsed and Wine should still find your Printers.
I have no Idea, why both methods fail. Please attach /etc/printcap
$ file /usr/lib/libcups.2.dylib /usr/lib/libcups.2.dylib: Mach-O universal binary with 4 architectures /usr/lib/libcups.2.dylib (for architecture ppc7400): Mach-O dynamically linked shared library ppc /usr/lib/libcups.2.dylib (for architecture ppc64): Mach-O 64-bit dynamically linked shared library ppc64 /usr/lib/libcups.2.dylib (for architecture i386): Mach-O dynamically linked shared library i386 /usr/lib/libcups.2.dylib (for architecture x86_64): Mach-O 64-bit dynamically linked shared library x86_64 $ ls /etc/printcap ls: /etc/printcap: No such file or directory
http://bugs.winehq.org/show_bug.cgi?id=17354
--- Comment #10 from Austin English austinenglish@gmail.com 2009-03-07 11:43:57 --- (In reply to comment #9)
(In reply to comment #7)
Have you tried running comparing Wine and Darwine's source to see how they fix it?
Unfortunately, I wouldn't know where to start. So no, I haven't. Can you give me some pointers on where to look and what to look for?
$ diff -ur wine_source darwine_source
Should give you something to go on. Be sure to use the same version, otherwise you'll get spurious results.
http://bugs.winehq.org/show_bug.cgi?id=17354
--- Comment #11 from Austin English austinenglish@gmail.com 2009-09-08 11:42:17 --- Is this still an issue in current (1.1.29 or newer) wine?
http://bugs.winehq.org/show_bug.cgi?id=17354
--- Comment #12 from David Baumgold singingwolfboy@gmail.com 2009-10-09 15:04:51 --- (In reply to comment #11)
Is this still an issue in current (1.1.29 or newer) wine?
Just retested with 1.1.29 -- still an issue.
http://bugs.winehq.org/show_bug.cgi?id=17354
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Platform|Macintosh |PC
http://bugs.winehq.org/show_bug.cgi?id=17354
Kenneth Robinette support@securenetterm.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |support@securenetterm.com
--- Comment #13 from Kenneth Robinette support@securenetterm.com 2010-12-24 11:23:49 CST --- (In reply to comment #12)
(In reply to comment #11)
Is this still an issue in current (1.1.29 or newer) wine?
Just retested with 1.1.29 -- still an issue.
I just tried this on Mac OSX, Snow Leopard 10.6.5, Wine version 1.3.9 installed by MacPorts with XQuartz version 2.6.0. Each time a Windows based WINE program tries to print, it fails with the following dialog message:
"Before you can perform printer-related tasks such as page setup or printing a document, you need to install a printer. Please install one and retry."
The following message is displayed in the log:
fixme:winspool:WINSPOOL_EnumPrintersW We don't handle PRINTER_ENUM_CONNECTIONS
All normal Mac programs can use the printer attached to the Mac. None of the wine based Windows programs can print including the wine included Notepad program.
The printer is network shared and is physically attached to a Micosoft XP system.
http://bugs.winehq.org/show_bug.cgi?id=17354
--- Comment #14 from Kenneth Robinette support@securenetterm.com 2011-01-01 08:42:52 CST --- (In reply to comment #13)
(In reply to comment #12)
(In reply to comment #11)
Is this still an issue in current (1.1.29 or newer) wine?
Just retested with 1.1.29 -- still an issue.
I just tried this on Mac OSX, Snow Leopard 10.6.5, Wine version 1.3.9 installed by MacPorts with XQuartz version 2.6.0. Each time a Windows based WINE program tries to print, it fails with the following dialog message: "Before you can perform printer-related tasks such as page setup or printing a document, you need to install a printer. Please install one and retry." The following message is displayed in the log: fixme:winspool:WINSPOOL_EnumPrintersW We don't handle PRINTER_ENUM_CONNECTIONS All normal Mac programs can use the printer attached to the Mac. None of the wine based Windows programs can print including the wine included Notepad program. The printer is network shared and is physically attached to a Micosoft XP system.
I see the problem. In MacBool Pro OS/x 10.6.5 the /etc/printcap file is not present, however the /etc/cups/printers.conf file is being updated to reflect any printer that is defined. The creation of /etc/printcap depends on the CUPS configuration (according to http://cups.org/doc-1.3/ref-cupsd-conf.html#Printcap). As far as I can tell, CUPS in OS X is configured not to create the file by default. If you manually create a valid /etc/printcap file, WINE printing will work.
http://bugs.winehq.org/show_bug.cgi?id=17354
--- Comment #15 from David Baumgold singingwolfboy@gmail.com 2011-01-01 10:49:15 CST --- (In reply to comment #14)
I see the problem. In MacBool Pro OS/x 10.6.5 the /etc/printcap file is not present, however the /etc/cups/printers.conf file is being updated to reflect any printer that is defined. The creation of /etc/printcap depends on the CUPS configuration (according to http://cups.org/doc-1.3/ref-cupsd-conf.html#Printcap). As far as I can tell, CUPS in OS X is configured not to create the file by default. If you manually create a valid /etc/printcap file, WINE printing will work.
Interesting. According to the OS X man page for cupsd.conf, the printcap file is only needed for "legacy applications": http://developer.apple.com/library/mac/#documentation/Darwin/Reference/ManPa... It doesn't say anything about whether or not cupsd generates a printcap file by default, but I haven't touched my cupsd.conf, and no printcap file appears on my system.
It seems that the workaround would be to add the line "Printcap /etc/printcap" to /etc/cupsd.conf, but perhaps a better solution would be for Wine to query CUPS directly, rather than going through the "legacy" printcap file. I know nothing about how all of this works, or even if it's possible, but if Apple says that printcap is for legacy use -- and Apple *owns* CUPS now -- then there must be another, better-supported way.
http://bugs.winehq.org/show_bug.cgi?id=17354
--- Comment #16 from Alexandre Julliard julliard@winehq.org 2011-01-01 11:33:08 CST --- As already explained, printcap is only used if CUPS doesn't work. There's something wrong with your setup.
http://bugs.winehq.org/show_bug.cgi?id=17354
--- Comment #17 from Kenneth Robinette support@securenetterm.com 2011-01-01 11:44:34 CST --- (In reply to comment #16)
As already explained, printcap is only used if CUPS doesn't work. There's something wrong with your setup.
Don't think so. This is a brand new MacBook Pro, with WINE 1.3.10 installed by MacPorts and a clean compile was obtained. All the Mac programs print ok. The only programs that cannot print is WINE based programs.
I suspect its wine inablilty to link with the Apple CUPS library
http://bugs.winehq.org/show_bug.cgi?id=17354
--- Comment #18 from Alexandre Julliard julliard@winehq.org 2011-01-01 12:52:18 CST --- (In reply to comment #17)
(In reply to comment #16)
As already explained, printcap is only used if CUPS doesn't work. There's something wrong with your setup.
Don't think so. This is a brand new MacBook Pro, with WINE 1.3.10 installed by MacPorts and a clean compile was obtained. All the Mac programs print ok. The only programs that cannot print is WINE based programs.
I suspect its wine inablilty to link with the Apple CUPS library
Obviously the failure to load libcups is the problem. Make sure the directory that contains it is listed in your DYLD_FALLBACK_LIBRARY_PATH.
http://bugs.winehq.org/show_bug.cgi?id=17354
--- Comment #19 from Kenneth Robinette support@securenetterm.com 2011-01-01 13:10:04 CST --- (In reply to comment #18)
(In reply to comment #17)
(In reply to comment #16)
As already explained, printcap is only used if CUPS doesn't work. There's something wrong with your setup.
Don't think so. This is a brand new MacBook Pro, with WINE 1.3.10 installed by MacPorts and a clean compile was obtained. All the Mac programs print ok. The only programs that cannot print is WINE based programs.
I suspect its wine inablilty to link with the Apple CUPS library
Obviously the failure to load libcups is the problem. Make sure the directory that contains it is listed in your DYLD_FALLBACK_LIBRARY_PATH.
Don't think so. Based on everything I have seen on the issue, MacBook Pro OS X 10.6.5 does not set the DYLD_FALLBACK_LIBRARY_PATH, and I do not set it. So are you saying WINE printing will not work on a standard unmodified OS/X 10.6.5?
http://bugs.winehq.org/show_bug.cgi?id=17354
--- Comment #20 from David Baumgold singingwolfboy@gmail.com 2011-01-01 13:17:01 CST --- Based on all of this information, I did some more poking around, and I discovered that when Macports configures Wine prior to compiling it, it uses the --no-cups option, which presumably disables CUPS support: http://trac.macports.org/browser/trunk/dports/x11/wine/Portfile So, this is probably a packaging problem, and should be taken up with the Macports development team. I've already created a bug report on their ticket tracker: http://trac.macports.org/ticket/27836
http://bugs.winehq.org/show_bug.cgi?id=17354
--- Comment #21 from Kenneth Robinette support@securenetterm.com 2011-01-01 13:22:18 CST --- (In reply to comment #20)
Based on all of this information, I did some more poking around, and I discovered that when Macports configures Wine prior to compiling it, it uses the --no-cups option, which presumably disables CUPS support: http://trac.macports.org/browser/trunk/dports/x11/wine/Portfile So, this is probably a packaging problem, and should be taken up with the Macports development team. I've already created a bug report on their ticket tracker: http://trac.macports.org/ticket/27836
Thanks David. That makes more sense and probably is what the real problem is.
http://bugs.winehq.org/show_bug.cgi?id=17354
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution| |INVALID
--- Comment #22 from Alexandre Julliard julliard@winehq.org 2011-01-01 13:32:51 CST --- Not a Wine bug then.
http://bugs.winehq.org/show_bug.cgi?id=17354
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #23 from Austin English austinenglish@gmail.com 2011-01-03 12:30:58 CST --- Closing.
http://bugs.winehq.org/show_bug.cgi?id=17354
--- Comment #24 from Kenneth Robinette support@securenetterm.com 2011-01-03 12:41:20 CST --- (In reply to comment #23)
Closing.
Please note that the problem was reported to MacPorts.org by David Baumgold, and it was fixed within a matter of hours. The current MacPorts WINE-DEVEL 1.3.10 now supports CUPS.
http://bugs.winehq.org/show_bug.cgi?id=17354
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- OS/Version|Mac OS X 10.5 |Mac OS X