J. White [Mar06]: While being obscure during the days of PowerPC-only OS X, the question now of "What about Wine on OS X?" has become quite frequent in the Intel-era and will become more so. Shortly afterward he announced on the first of september CodeWeavers CrossOver Office release. [...] : We just shipped a public beta of CrossOver for the Mac.
Ed. [Jul 06]Since Apple started using x86 machines, Wine has targetted these as well. Patches have been accepted for these. Those with Power PC systems can still look toward the clever efforts of the Darwin developers.
Segin[Mar 06]: 'Wine'[...] doesn't emulate a CPU. Therefore you cannot run x86 Windows programs on a PowerPC Macintosh.)
A user asked on the wine devel list: Are there any [...] intel/darwin areas that require attention or are being worked on?
A. Julliard: At this point, many simple apps should probably work OK. The main problems areas that need work are exception handling (mainly because of kernel bugs) and the debugger support that essentially doesn't work at all. You'll also need to disable optimizations when building because of the gcc stack-realign bug (we need to come up with a configure check for it), and you most likely have to use an x.org X server because the Apple one has some serious bugs in rootless mode. So it's not quite ready for prime time yet. We are hoping to have binary packages on WineHQ in the near future, that should make it somewhat easier to get things going.
W. Knop summarised: Overall Status: Simple applications should work. Notes:
- Make sure to disable gcc optimizations when building since gcc has a stack realignment bug.
- Also, Apple's X11 has serious bugs in rootless mode, so x.org's X11 may be necessary.
- Quartz Driver: work in progress
- Core Audio Driver: works
- 16 Byte Stack Alignment: work in progress
- Mach Kernel Workarounds and Exception Handling: needs a lot of work
- Debugger: does not work
Since that time, much has improved. Still some more to go. J. McKenzie [Dec 09] 64 bit Wine on the Mac will NOT run 32 bit Windows programs at the present time from what I understand. Maybe the folks at MacPorts have more on this. I do know that XCode 3.1 is broken bad enough that 16 bit program parts are not build-able on Leopard. A. Juliard: 64-bit isn't supported at all on Mac OS at the moment [..] It's not quite perfect, but it's much better on Linux..
J. McKenzie feb 09: [It] appears [..] that MacOSX Leopard 10.5.6 broke something. I have yet to figure this one out.
N. Burns posted how he installed wine, with a patch and also how he ran software int his thread: http://permalink.gmane.org/gmane.comp.emulators.wine.devel/65561
Ed Aug 08: Wine works on Mac x86 processors. But it needs a little bit of work to get it going.
wine user Aug 08Vitamin: Mac's OpenGL (or more precisely X server) doesn't work with Wine. You need Xorg's version of X.
Another users posted: This is very true if you have the stock Leopard's X11 installed. You need to get the version produced by the XQuartz for MacForge version. Their home page is at http://xquartz.macosforge.org Get the latest/greatest version and install it AFTER installing orverifying that X11 is installed on your Mac.
OSX and Codeweavers
All you conspiricy theorists, just relax. J. White posted about Codeweavers in March 08 on the wine devel lists:
We are very interested in Wine having a more native OS X interface. However, our analysis is that the task is difficult and will require a long time to stabilize and get right. I am excited by and interested in Emmanuel's work, but I am told not to be too excited, that it's not a magic bullet, and that the bulk of the hard work is still ahead. We have a long history of hiring proven Wine developers and thereby sponsoring their work. We do that as much as our income will allow, gated by peoples ability and willingness to work with us.
To answer the seemingly implied question: "Are we deliberately crippling Wine for Mac OS X to serve our own nefarious ends", the answer is no. That's in no small part because our main nefarious end is to improve Wine . Did we make a decision to focus on an X11 based solution for Mac OS X? Yes, for the time being. The advantages are that it's here now, works now, and that most of what we do now also benefits Linux and other platforms. The disadvantage, apparently, is that people suspect us of all kinds of nefarious plots... And, on a final note, just so its clear: the contract between CodeWeavers and Alexandre is very explicit: [...]CodeWeavers has no control over whether or not Emmanuel's code goes into Wine. That's entirely Alexandre's decision.
[Ed while not connected in any way to Codeweavers, A guess at translation would be this: They have to consider where to spend their time and pick their fights. While Codeweavers is not a bottomless pit, they have done wonders for wine - just check the enormous number of patches they regularly submit back to Wine. You can support their efforts and Wine - if you have a business use for Wine - consider using the codeweavers version of wine]
Winehq Bugzilla entry 19412 Noted there are few developers working on OS X improvements - you could step up and help: The issue isn't so much the amount of users on OS X, but the amount of developers. Afaik that's only Stefan and me for D3D, and mostly because CodeWeavers pays us to care about OS X.
- http://wiki.osx86project.org/wiki/index.php/Darwine OSx86 Wiki entry
- http://darwine.opendarwin.org/ Darwine project page
[Ed this will get out of date real fast. If you want to help - this is a wiki and you are welcome to update it and please note the date]
Date: Sun, 08 Feb 2009 08:48:02 -0600 From wineforum-user [Wine] Helpful Hints for OS X Users (Idiots Guide?) A user posted: This guide was tested on OS X Leopard 1.5.6. The following guide is how I set it up. The steps may vary slightly for you. Be sure to read this whole thread before actually trying some of the things listed here, some of them might not apply to your situation.
- Remove Darwine
First, if you have already tried to get Darwine running on your own, but had difficulty or error messages, remove it and start from scratch.
- Go to your applications folder and delete the folder entitled Darwine.
- If you installed Trix, delete it as well.
- Next, you will need to remove a hidden folder in your user folder. There is a complicated way to do this, and there is my easy way. Go to your Applications folder, open the Utilities folder and launch Terminal. The following command will allow you to see hidden files and folders from finder.
- defaults write com.apple.Finder AppleShowAllFiles YES
- Copy and paste that command into the terminal and press enter. It will appear that nothing has happened.
- Next click on the Apple in the top left of your screen and click "Force Quit..." When the window opens, click Finder and then click the relaunch button. This just restarted Finder to allow that command to take effect.
- Go to your [WINE] User Folder. This can be found by opening Macintosh HD, and clicking your Home Folder. Locate the folder ".wine" and delete it.
- Now to restore Finder to its original state, run this command, and restart Finder again. Code:
- defaults write com.apple.Finder AppleShowAllFiles NO
- defaults write com.apple.Finder AppleShowAllFiles YES
You have just removed Darwine!
- Install XQuartz 2.3.2
- You will need to download XQuartz 2.3.2 from this URL: http://static.macosforge.org/xquartz/downloads/X11-22.214.171.124.dmg
- When the download completes, mount the image by double-clicking it.
- Launch the installer, and follow the instructions. If any choices arise, leave all default selections.
XQuartz is now installed.
- (Re)Install Darwine
- Download the latest stable release of Darwine from this URL: http://darwine.good-day.net/Darwine-x86-1.0.1.dmg
- When the download completes, mount the image by double-clicking it. A window will open.
- Drag the Darwine folder to the Applications folder, and if you like, copy Trix as well. (I copied it, but never configured/used it.)
Darwine is now installed.
- Prepare Darwine to Run
- This step may seem silly, but this was the key to making everything work for me.Before trying to launch Darwine by calling a windows application, we need to launch Darwine on its own. Go to your Applications folder, open the Darwine folder and launch Darwine.
- From the Menu at the top of the screen, click WineHelper and then click Configure Wine. The computer will appear to crash, but it is running a process in the background. Simply leave it for about a minute, maybe two.Don't change any settings, just click save, and close the window.
- Click on the WineHelper button again, and this time click on Preferences. Don't change any values, and close the window.
Darwine is now ready to run some windows applications!
- Try a windows application
- For my first application, I attempted to run the AutoCad 2002 installer. The results were excellent, the installer popped up, and installation was a breeze. Everything is running great, and I am really impressed by how well Darwine is handling this program. For those who don't know how to run windows applications, its as simple as double-clicking the .exe file.
This guide is a mash up of about two hours of reading and finding various solutions to problems I had. I hope this guide helps other struggling Mac users! I am no Darwine expert, but I would be happy to try and help other Mac users with their installations.
A user posted to the forum and asked Does any of this work in OSX 10.4.11?
J. McKenzie: Yes, but you will have to install X11 from your Tiger DVD before installing XQuartz 2.3.2. There are critical library files that must be copied first. Also, Mike's Wine for MacOSX builds will only work on INTEL based platforms.
X11 vs XQuartz
J. McKenzie [Feb09]: Please install X11 from the Tiger DVD BEFORE installing XQuartz 2.3.2. Mike and I both recommend it and this is critical so that his Wine for MacOSX (formerly known as Darwine) builds will run. Archived-At: <http://permalink.gmane.org/gmane.comp.emulators.wine.user/39910>
A user asked: I have seen XQuartz mentioned but don't really understand what it is/does that's different from X11.
J. McKenzie: The XQuartz team is assisting Apple with the modifications needed to get X11 to function properly with MacOSX. Apple's version is very broken, for example the OpenGL functions only go to OpenGL 1.2 and most gaming software needs functions from OpenGL 1.3. I would review what is available on the XQuartz web page and if it applies to Tiger BEFORE installing it. From what I remember, it can be installed on 10.4.11, but this may not be true any longer.
Work is on going to get wine using the Mac Quartz interface, but this is tricky work.
S. Edwards Mar 08 wine devel: There is a public branch where the Wine quartzdrv will go even if its not accepted in to Winehq. I have been from time to time bringing in infrastructure changes from the old winequartzdrv however the current tree is empty as the developer of the prior editions, Emmanuel Maillard, is in the process of overhauling it from recent changes to the Wine driver model. Keep an eye on
And hopefully in the next few weeks we will have a newer patch in the winequartzdrv tree for a more recent version of Wine. I am not sure what design changes Emmanuel is wanting to make but hopefully they will be more to Alexandre's liking and can eventually go in to normal winehq. If you want to work on quartzdrv with Emmanuel, send him an email to get an idea of what he needs and what the design will be, then apply for write access to http://repo.or.cz and I will add you to the winequartzdrv branch.
There is a script posted here to make it less of a hassle to build a stock Winehq release on OS X.
I'm happy to start making builds of Winehq snapshots for OS X. I just don't see the point when the Darwine packages are better for the end user experience. With Winehelper you get Doc integration and a partial menu system. The stock X.org on OS X is broken and has inherit overhead that will always be present, being able to write directly to the native Windowing system seems like a much more logical long term solution rather than trying to keep Xorg from breaking and or developing hacks to work around X and its tricky interaction with Quartz.
J. White: Any developer that wants to maintain source and/or binaries on the Darwine project at SF.net is welcome to do so. I have responded to every such request that I have seen, which isn't to say of course that someone hasn't sent such a message that I haven't seen. Folks should be aware that you must subscribe to the list to post (although I do manually review posts from non-subscribers and try to put through any that are actually about Darwine and not male enhancement or get rich quick...). It is true that questions from users trying to run application X may not get much help other than being told Darwine isn't ready for end users.
Of course folks are also welcome to host their own builds, and I'd be happy if someone came along and just fixed the web site (which suffered greatly in the move back to SF.net from opendarwin.org - I didn't want to leave SF.net in the first place...), so we could point other folks to those builds.
It was never my intention that Darwine be a fork of Wine, but rather a friendly haven for Mac developers working on Wine. If that means doing more for users such as hosting binaries, then I'm fine with that too.
Adam noted: Latest WineQuartz.drv patch is 0.9.58. Is there any change for more recent release? I tried this patch with 1.0-1 however it has too many conflicts.It would be most convenient if you had just update http://repo.or.cz/w/wine/winequartzdrv.git to match 1.1.0 somehow and include Quartz.
R. Shearman Someone needs to do the work to resolve the conflicts that you just mentioned. CodeWeavers would get many more customers with a working quartz driver. The real reasons are technical. If they weren't then you would already find CrossOver 7.0 shipping with winequartz.drv, which it doesn't.
Emanual: I resolved conflicts for wine-1.0, but didn't take a look yet for wine-1.1.0, i just know that's some changes in user32 and winex11.drv have to be update in winequartz.drv too. I will see this week end if i can find free time to make a new patch for winequartz.drv and send it to SourceForge. (OpenGL is broken in winequartz.drv actually, because of a lack of time to fix it)
There is a bit of confusion about what Darwine is these days:
[..]For those who may not be clear, Darwine is not a fork of Wine, but a Wine developer forum focused on OS X (and Darwin) specific issues. wine archive
wine mailing list wineuser feb 09: The "official" darwine project is may be stopped (i dont know). But if you go to: http://www.kronenberg.org/darwine/ Mikes site you can see that he tries to build never wines. There is another guy that is building newer wines. Have a look here in winehq (intsalling wine on mac osx or something like this - there are both links).
With the confusion between the names Darwine and Wine D. Kegel asked dec 08: I would like to keep Darwine as the name of the old powerpc project that combined an x86 emulator and wine. Can we convince Mike and Zach to switch names to just plain Wine?
Zach:I'd have no problems switching over to just using Wine instead of Darwine. Also, maybe Jim White or someone else that actually developed Darwine could comment? All I do is package it.. and even the, I haven't really had time to do so recently. FWIW, I'm building 1.1.11 right now though.
D. Kegel: I asked Jim White [..] whether I was right to assume that Darwine referred to the original powerpc project with an x86 emulator hooked up to it, and whether Wine for Mac OS X x86 should just be called Wine, and he said: Yes, of course. Darwine is quite quiescent, but I think it did some real good in getting the Wine port to Mac started...
Building from Source
There are a few steps for Wine on the Mac OSX (Darwine more refers to the emulation and wine for Mac's with non intel processors). This is from the mailing lists and contributors like yourself and can become outdated.
[Jan 09] When I run the configure script for 1.1.13 on my Mac, at the end it states that the jpeg and png development libraries could not be found and thus support for these two file types will not be incorporated. I checked my system and the libraries are there and I added symlinks to /usr/lib from the Fink installation directories. What do I need to do in order to get this to work?
Also I noticed that a program called conftest is called using otool. How do I disable the deletion of this program so that I can manually run this program? If that is not possible, how do I build this program? Reading through the configure script is a little difficult, but not impossible....
Cesar: Try something like:
- LDFLAGS="-L/opt/local/lib" CPPFLAGS="-I/opt/local/include/" ./configure
You need to specify both the library dirs and the include dirs. This is using macports. For fink I guess the libraries are located somewhere under /sw IIRC.
One needed in Nov 08 was mentioned by J, McKenzie: FontForge is required to build Darwine. MacOSX does not come with the necessary parts to support TrueType fonts.
Apple Wine Packages
D. Kegel dec 08: Say, http://www.kronenberg.org/darwine/ seems to be a popular source of nearly up to date wine builds for the mac. How about we link to it from http://winehq.org/download/ ? Furthermore, are his packages good enough to support? If so, how 'bout we ask him to add links to bugzilla and the appdb from his page?
A. English: It currently has a few 'OS X-isms'. The patch that causes 100% cpu usage on SSL sites in IE6 is reverted, as well as a few x11 hacks. The other main problem is fonts. I think we need to fix the X11 hacks needed before doing considering it 'official' wine. We don't want a flood of bug reports for that problem.
[Jul 09] ---> Building mesa Error: Target org.macports.build returned: shell command " cd "/opt/local/var/macports/build _opt_local_var_macports_sources_rsync.macports.org_release_ports_x11_mesa/work/Mesa-7.4" && make default INSTALL_DIR=/opt/local "
J. McKenzie: The problem is that X11_Mesa is not building on your system. You'll have to ask about this on the MacPorts forums.
[Jul 09] winevdm C:\windows\system32\winevdm.exe MacOS "page fault on read access to 0xffffffff" old 16bit application
This appears to be an apple bug. see Winehq Bugzilla entry 14920
[Sept 08 wineuser]
- err:wgl:X11DRV_ChoosePixelFormat No libGL on this box - disabling OpenGL support !
J. McKenzie: This is not a problem caused by Wine, but rather the X11 program under Leopard (MacOSX 10.5) does not support OpenGL 'out of the box'. There is a possible solution: Use the XQuartz version of X11. It is a simple process, visit the XQuartz MacOSForge web site. Select Releases and download XQuartz 2.3.0. Once the file completes downloading to your Mac, click on the disk image file. This will open to reveal two files: a package file and a folder which includes the readme and change log. Click on the package installer icon to start the installation. It is HIGHLY recommended that the installation be completed by a system administration account. Follow the prompts to install the software package. FWIW, approved XQuartz versions are used in future Leopard updates, you are installing the latest approved update ahead of the Leopard update schedule.