Winehq For Mac Os X



. Mac driver - A native Mac OS X driver is implemented, for better integration with the Mac desktop environment. The full range of driver features are supported, including OpenGL, window management, clipboard, drag & drop, system tray, etc. X11 is no longer needed on Mac OS X, but the X11 driver is still supported, e.g. When running remotely.

Winehq For Mac Os X 10.13

The Wine development release 5.16 is now available. What's new in this release:. Support for x86 AVX registers. Some ARM64 fixes for macOS. Still more restructuration of the console support. Wine (recursive backronym for Wine Is Not an Emulator) is a free and open-source compatibility layer that aims to allow application software and computer games developed for Microsoft Windows to run on Unix-like operating systems.Wine also provides a software library, known as 'Winelib', against which developers can compile Windows applications to help port them to Unix-like systems. To check what version of macOS you're running, click on the Apple logo on the far left side of the toolbar, select 'About This Mac', and look at your version number under the big 'macOS' or 'OS X'. If it's 10.10 or higher, you're all set. What is the difference between Wine and Darwine? Darwine was the original effort to port Wine to.

This tutorial is for intermediate users who want to install and useWine on their computer running macOS.You should already know the basics of how to use the command line.If you don't, read this tutorial first.

What is Wine?

Wine is awesome.No, I'm not talking about the kind you drink,I mean the kind that lets you run Windows apps without theWindows operating system.It's kind of Zen, when you think about it.Oh, and did I mention it's completely free, legal, and open source?

Nowadays, Windows and Mac play nicely together.You can install Windows and Mac side by side and switch between them usingBoot Camp, but that requiresa reboot every time, and you can only use one operating system at a time.You can also use a tool likeParallels Desktop orVMware Fusionto virtualize Windows and run it together with Mac,but virtualization is slow and it takes up a lot of memory.(Your physical computer creates an imaginary 'virtual' computer within itself,and runs Windows on that. That takes a lot of resources!)On top of that, all of these solutions require you to own a legal copyof Windows, which isn't cheap!

Wine is different. When any program runs, it requests resourceslike memory and disk space from the operating system.All that Wine does is make sure that those requests get answered so thatthe program can run correctly. As far as the program knows, everythingis going smoothly because it has everything it needs.It never even realizes that it's not running on Windows!It's simpler than emulating a whole new computer, so it's faster.Since it's just translating requests, you don't need a copy ofthe actual Windows operating system. Plus, Wine is open source,which means people are continually improving it and adding new features.And you can't beat the price!

Will My Program Work With Wine?

A lot of people discover Wine because they have one specific Windows programthat they need to use, and it's the last thing preventing them from switchingto a different operating system. So, the big question is, will it work?The short answer is: probably, but it's worth checking.

The Wine project maintains a database called theAppDB that hasuser reviews of how well specific Windows programs work under Wine.Search for your program and find out! (If it's not listed, that doesn'tnecessarily mean that it won't work — only that you're apparently tryingto use a very obscure program!)

Requirements

To install Wine on your Mac, you will need the following:

  • macOS 10.10 (Yosemite) or above (but 10.15 Catalina is not recommended)
  • Access to an Admin account, with password
  • An internet connection

To check what version of macOS you're running,click on the Apple logo on the far left side of the toolbar,select 'About This Mac', and look at your versionnumber under the big 'macOS' or 'OS X'. If it's 10.10 or higher, you're all set.

Note that Wine does not work well with macOS 10.15 Catalina. Apple removed 32-bit supportin Catalina, which is a critical part of the macOS system that almost all of Wine relies on.You can run 64-bit applications through Wine on Catalina, but very few applications for Windowsare 64-bit. If you need to use Wine, you should not upgrade to Catalina.

You need an Admin account on your Mac because only Admins can install software.You will need to be logged in to this Admin account during the installation.If there is only one account on your computer, it is an Admin account.The account must have a password: if the account has no password,the sudo utility will fail. To set or change your password,go to the Accounts section in System Preferences.

Part 1: Install Homebrew

Homebrew is a package manager that makes installingopen source programs much easier. In particular, trying to installa large program like Wine without the help of a package manager would betremendously difficult.Fortunately, Homebrew itself is simple to install: just open up theTerminal and run this command:

The Terminal will tell you what it's about to do, and ask youif you want to proceed: press Enter to do so.The Terminal may then ask for a password: this is the passwordto the Admin account on your computer. As a security measure,the Terminal does not display anything as you type, not evenasterisks (*). Type your password anyway, and press Enter. If you get somekind of error, it might be because the Admin account doesn't have apassword set. Setting a password is required.

Installing Homebrew should only take a few seconds or minutes(depending on the speed of your internet connection). When it's done,the Terminal will say that the installation was successful, and ask you torun brew doctor. Do as it suggests:

This will make Homebrew inspect your system and make sure that everythingis set up correctly. If the Terminal informs you of any issues, you'll needto fix them yourself, and then run brew doctor again to verify that youfixed them correctly. When everything is set up correctly, you'll see themessage Your system is ready to brew, and you can move on to the next partof the tutorial.

Note: If Homebrew tells you that you need to agree to the Xcode license,you can do that by running:

The Terminal window will fill up with the Xcode license:read it, type agree and hit enter to agree to the license.

Part 2: Install Wine Using Homebrew

Now we get to actually install Wine! We'll let Homebrew do all the work,all you have to do is tell it what you want with this command:

Let's break down this command into parts. brew refers to Homebrew, whichyou just installed. cask refers toHomebrew Cask,an extension to Homebrew that is used to install GUI application on yourcomputer. (GUI stands for 'Graphical User Interface'. A GUI application isan app that you can see running, as opposed to invisibly runningin the background.) install refers to the fact that you're askingHomebrew Cask to install something on your computer, and wine-stableis the name of the thing that you want it to install. Wine has a 'stable' versionand a 'devel' version: you probably want stable, since it should have fewer bugs.

Winehq For Mac Os X

When you run this command, Homebrew will start automatically downloadingand installing software onto your computer. It might start by installingsoftware that has a totally different name: that's fine! Like most complexapplications, Wine doesn't work alone -- it relies on several other pieces of software torun correctly. These are called 'dependencies', and Homebrew is smart enoughto install them for you automatically when necessary.

While it's working, Homebrew will display messages and progress bars on the Terminal to let you know what it's doing. When it's done installing Wine, it will stop displaying messages and wait for you to type in a new command. When that happens, move on to the next step!

Part 3: Install Windows Programs Using Wine

To install a Windows program, first download the installer file:it should end with .exe. Remember the location you put it, and open upthe Terminal again. cd to the location, and use ls to make sure you cansee the installer file. (Note: if you do not know what cd and ls are,you should learn how to use the command linebefore using Wine.)

Once you are in the correct directory, run the installer through Wineby running the following command in the Terminal:

Where $INSTALLER is the name of the installer file. For example,if the installer file is named setup.exe, you would run:

A window will pop up with a regular graphical Windows installer.Click through it, and you're done!

Part 4: Run Windows Programs Using Wine

Open up the Terminal and run this to get to your Program Files folder:

Run ls to see what programs you have installed. Pick a program,and enter its directory using cd. (If the folder has a space in it,you must type a before the space. For example, Program Files.If you're having problems, try using tab autocomplete.)There should be a file that ends in .exe: this is the program file.Type this into Terminal:

Where $PROGRAM is the name of the .exe file. For example, if the programfile is named STARCRAFT.EXE, you would run:

The program will pop up in a new window, ready to use!Enjoy using Windows on your Mac, freely and legally!

Making a Dock Icon

Many people want to be able to run Windows programs the same waythey run other programs on the Mac: by clicking an icon in the Dock.Wine isn't specifically designed to support this, but with a little trickery,we can make it do what we want.

Note: Wine prints out error messages in the Terminal when something goes wrong.By launching Windows programs via a Dock icon, you are sidestepping theTerminal, which means that if something does go wrong and Wine has to quit,it will not be able to tell you what the problem was. The first stepto solving a problem is knowing what it is, so without running Winefrom the Terminal, you won't be able to fix it, and neither will anyone else.Running from the Dock is fine as long as your program seems to be workingcorrectly, but if it crashes, the first thing you should try is running itfrom the Terminal instead: it won't prevent the program from crashing,but it will give you some clues on how to fix the problem.

In order to launch a Windows program via the Dock, we're going towrite an AppleScriptthat launches the program for us, and then putthat AppleScript in the Dock. Essentially, we're writing a program ourselves!Don't worry, it's easy enough. There is a program on your computerthat is designed for helping you write AppleScripts:it's called 'Script Editor', and you can find it in the/Applications/Utilities directory of your computer,same as the Terminal itself.

Open up the Script Editor. You should see a window with a large areayou can type in near the top: this is where you write your AppleScript.In that area, type the following text:

You'll need to replace $PATH_TO_PROGRAM with the path from theProgram Files directory to your program executable. You can see thatyou're simply telling the AppleScript to run a line of code in the Terminal:the same line of code that you could run to start your Windows program.

Next, press the Compile button at the top of the window.The text should become colored to indicate that Script Editorunderstands what you wrote. You can also try pressing the Run buttonto run your script: it should open the Windows program successfully.

Lastly, save your script. You can give it whatever name you'd like,but be sure to select File Format: Application in the save options,and leave Startup Screen unchecked.

Open up the Finder, go to where you saved your script, and drag thatfile to your Dock. It should stay there, just like a real application — because it is a real application! However, all it does is runthat launcher command for you, so you can move the application around,rename it, or even delete it, and it won't affect the Windows programthat you're running.

Keeping Wine Up to Date

Wine is an open source program. That means that programmersaround the world are continually improving it, adding new featuresand squashing bugs. If you don't update Wine, though, it will neverget those improvements, so it's generally a good idea to check for updatesevery so often. We can use Homebrew to keep Wine up to date: it's easy!Just run this command:

With this command, Homebrew will first update itself, if any updatesare available. It will then find all the outdated software it knows about(including Wine) and upgrade them all to the latest version.Checking for updates isn't strictly necessary, as Wine runs quite wellcurrently. However, it's a good idea to run this command every few monthsor so.

Uninstalling Wine and Homebrew

If you try Wine and you don't like it, uninstalling it is easy.Just run this command:

And Homebrew will helpfully remove Wine from your computer.However, in order to install Wine, Homebrew also had to install many othersmall programs that Wine relies upon to work correctly.(That's why the install process takes so long!)If you want to remove these as well,run this script:

That script will remove everthing that you installed in this tutorial,including Homebrew, Wine, and all the other programs Homebrew installedto get Wine to work correctly.

Please enable JavaScript to view the comments powered by Disqus.


Translations of this page: not yet ported. Translators see Discussion page.

See also the general Wine FAQ

  • 12How to create shortcut, launcher, or .app to start a given .exe?

1 What is the difference between Wine and Darwine?

Darwine was the original effort to port Wine to Macs Running macOS and consisted of 2 major efforts.

  1. PowerPC Macs - attempted to integrate QEMU into Wine for x86 CPU emulation
  2. Intel x86

Wine for macOS x86 has now merged into main Wine project, here at WineHQ. Darwine is no longer actively developed.

2 What does Wine on macOS support? (DirectX, DirectSound, Direct3D...)

  • Sound should be working just fine since Wine release 0.9.15.
  • MIDI output (via Apple's built-in software synthesizer) works.
  • 3D (OpenGL Support) works. Note that due to Apple's X11 often being outdated, we recommend you install XQuartz, available since 10.5 Leopard, which closely follows Xorg development. Since macOS 10.5.7, Apple X11 may be good and recent enough for wine 3D usage.
  • Full screen mode works in a Wine release as old as 1.1.24. However, there are too many restrictions to make it generally useful:
  • Unlike CodeWeaver's X server packaged with their CrossOverMac product, Apple's X11.app will not change the screen resolution. So your app must support your monitor's likely huge native resolution, e.g. 1600x1200. If your app knows only 800x600 and 1024x768, it will not start and may even crash.
  • Some modern apps, although they may support your monitor's resolution during play, start with logos and intro animations that want to open a screen at 640x480 or 800x600. This will fail and may cause your application not to start at all or even crash. For instance, the game 2weistein - Das Geheimnis des roten Drachen - works well in full screen, yet the screen stays black at start, trying to display the first intro animation, while the subsequent second logo, intro movie and game logo all scale nicely to full screen.
  • The X11 menu bar will remain visible at all times. The app sees a screen resolution 22 pixel less than it really is, e.g. 1600x1178.
  • The dock will stay in front of the fullscreen window. Use its auto-hide feature to get rid of it.
  • 'Always on top' windows remain atop Wine's fullscreen window, e.g. window #3 of the CPU% activity meter -- exactly like they do in !TimeMachine's full screen display. Just close or hide them.
  • Running a Fullscreen program in a Wine Virtual Desktop window should work fine
  • Starting in Xquartz 2.6.0 (available Oct-Nov 2010), RandR and resolution changing should be working on Macs.
  • mcicda.dll does not work (bug #20323), so apps will not play music off CD tracks.
  • Multi-CD installs work, using the `wine eject` command.
  • More generally, CD-ROM support is incomplete, so Wine will not start many copy-protected apps.

3 How do I change settings?

  • If you built a plain wine: run /path/to/your/wine winecfg as on any other UNIX.
  • Audio output will only be enabled after you ran winecfg to configure it.

4 Where are Wine's settings stored?

In your home folder (/Users/<username>/ resp. ~/) in the hidden folder .wine. You can get into (even hidden) folders in the Finder by pressing Shift+Command+G and entering the path, for example ~/.wine.

You can make the hidden folder 'visible' by creating a symbolic link: ln -s ~/.wine wine in Terminal.app.

5 How can I switch the locale?

This Wiki and other Wine documentation mention setting the environment variable LANG. This works for UNIX but deliberately does not work with Wine on MacOS for reasons enumerated in this thread. Instead, set the variable LC_MESSAGES, e.g. use LC_MESSAGES=ja_JP.UTF-8 wine japanese.exe or LC_MESSAGES=ja_JP.SJIS or LC_MESSAGES=fr_FR.UTF-8

6 Will there be a PowerPC version (or will there be a way to run Wine on a PowerPC processor)?

Darwine was the effort to port Wine to PowerPC processors. Darwine is NO LONGER ACTIVELY DEVELOPED.

7 Where can I get a working Wine for Intel Macs?

  1. WineHQ builds packages for macOS 10.8 and higher.
  2. You can compile wine from source with XCode and XQuartz. See macOS/Building for additional troubleshooting and directions.
  3. If you are a Fink or MacPorts user, consider installing the wine or wine-devel package.
  4. you can also check out the Third Party Applications page for info about other Apps that use Wine that may be much easier to use than building Wine yourself. Note that these products are not supported here, so please do not file bugs, submit AppDB test reports, or ask for help on the forum or in IRC if using one.

8 All 16 bit applications crash in winevdm.

This is radar://5935237 bug in Apple's linker, which affects XCode older than 3.2.x. It is reflected in Wine Bug #14920. 32bit apps are not affected. affects

Workarounds:

  • Build wine yourself with win16 support
    • macOS 10.4 Tiger: compile using Xcode 2.x b. macOS 10.5 Leopard: patch Xcode linker bugs, then compile
    • download the ld64 linker patch as described in Bug14920 comment29
    • apply the ld64 linker patch as described in Bug14920 comment38
  • macOS 10.6 Snow Leopard or later: compile using Xcode 3.2.x or later

9 How do I right-click in Wine on macOS?

Control-click, as you're probably used to, won't work in wine (so far?). Workaround: Enable secondary click by tapping the trackpad with two fingers. Therefor go to System Preferences > Keyboard & Mouse > Trackpad and enable 'Tap trackpad using two fingers for secondary click'. You can then do the right clicks by tapping the trackpad with two fingers.Update: if you are running a current version of Xquartz, you can go into the X11.app preferences when it's running and select what you want to be modifier keys for right and middle clicks.

10 How come my keyboard shortcuts don't work like normal

Wine by default maps the keys differently than native macOS applications.It's possible to change some of the keyboard mappings depending on the version of wine being used.

  • Since Wine 1.7.4 its possible to map Option as Alt by adding the following using regedit
  • Since Wine 3.17 it's possible to map Command as Ctrl meaning CMD+C/CMD+V now functions like Native applications

11 How to launch wine from terminal instead of the wine application?

To do this we need to add the wine application to the PATH variable

To do that we do the following

Then copy in the following

Comment out Wine Stable uncomment out the one you want to be added for use within terminal.To save press Ctrl+X then press Enter to save the file.Now any new terminal session will have wine from available the chosen wine application for the current user.

12 How to create shortcut, launcher, or .app to start a given .exe?

12.1 Instructions on making .app file launcher

This is for real Wine, installed to /usr/local. It can be modified to work with Macports Wine.

  • open up Apple's Script Editor
    • in macOS 10.6 to 10.9 this is '/Applications/Utilities/Applescript Editor.app'
    • in macOS 10.4 and 10.5 this is '/Applications/AppleScript/Script Editor.app'
    • in macOS 10.10 and up, this is '/Applications/Utilities/Script Editor.app'
  • Copy and paste the following code into Script Editor:
  • Edit the program per the directions in the lines that start with --
  • if everything is default, you only need to edit the 'set toRun' line
  • After you have edited it for your program, save it as an 'Application' (not a script) in the script editor
  • this will create a .app for you that you can double click to run what you specified.

It might start up a bit slow with no visual indicators... sometimes, be patient

12.2 Instructions on making custom launcher what invokes Terminal
  • Using TextEdit create text file with following contents:
  • The $HOME, in the beginning of the path, will expand to the home directory, in case of user Me, it will expand to /Users/Me
  • The dot(.) in the WINEPREFIX folder will make it invisible, you can omit the dot to leave folder visible and easier to work with
  • By default, wine uses /Users/YourUsername/.wine prefix, you can be creative and use other prefixes and paths to store multiple prefixes
  • If you need to define other constants for wine e.g. export WINEDEBUG=fixme-d3d,warn+heap,+debugstr or export LC_ALL=ru_RU.UTF-8, add all of them before the cd command.
  • If the program is inside the wine prefix, cd might look something like this: cd '$WINEPREFIX/drive_c/Program Files/theprogram/'
  • In case you want to use custom path to wine, you may replace `wine` on the last line with /path/to/wine/wine
  • Some programs may still have trouble starting, you can try to replace `wine 'myapp.exe'` with wine start /unix '$HOME/where/is/my/app/myapp.exe'

After making all customizations, save the launcher file as regular .txt file.Next, in the Finder, click on saved launcer file, then press Command+I (Get Info) and replace the .txt with .command which is an extension that Mac OS uses for shell (and perl, Python, tcl) scripts.Alternatively, you can remove file extension altogether.

Next, you need to give launcher file executive permissions. Open the Terminal and execute chmod +x path/to/my/something, where path/to/my/something is the path to the launcher file.

  • You can always change the code of the launcher by opening it with the TextEdit again. After adding changes, simply save the launcher file without renaming.

Optional: Changing the icon of the launcher file

On the macOS, it is possible to change the icon of any file to anything you desire.

NOTE: In some cases, your custom icon will not display if launcher file has extension. Refer to previous steps on how to rename the launcher.

Look into the hidden `~/.local/share/icons/` directory, where Wine keeps the icons created by application installers (.xpm and .png files); they would display on a Linux desktop.

In some cases, you will need to manually extract the icon from the .exe file. This can be done using tools like Resource Hacker. This tutorial, however, will not cover the process of doing it. It is assumed, that you have the application icon in the `.ico` or `.png` format.

Now that you have your icon file ready, open it with the Preview. In case of .ico it might have multiple frames/images inside, select appropriate one. Press Command+C (Edit>Copy). Next, in the Finder, click on the launcher file, then press Command+I (Get Info). In the top left corner of the launcher info, there will be a small image showing current icon, click on it to highlight it. Press Command+V to paste your icon.If everything goes well, the icon of your launcher will change.

13 Why is it building font metrics? This may take some time...

Actually, there are two bugs involved:

  1. Bug #17674 'wine recaching font metrics on every run', consuming upto 30 seconds at program start. This is fixed in wine-1.1.31.
  2. However, there is no need to cache font metrics at all as Wine should find a !FreeType library greater than 2.0.5 because one is included in MacOS. If your Wine exhibits this problem, you probably need to set the DYLD_FALLBACK_LIBRARY_PATH environment variable before launching Wine.

Start wine (in a Terminal) as follows:

or

You may patch the main wine launcher yourself and forget about this variable. Save this patch file, then invoke patch -p1 < mypatch.txt in a Terminal, while at the top of Wine's source directory, see macOS/Building.

Both MacPorts and Fink use a wrapper to the wine launcher which sets exactly this variable.

14 If I have a problem with Darwine on macOS, where should I report the bug?

Since

Mac
  • Darwine is a separate project with different licensing terms from Wine (GPL vs. LGPL),
  • it's not clear what kind of patches they apply on top of Wine,
  • the fact that they insist on a different name,

- report all bugs to Darwine developers.

15 How do I switch between the Mac/X11 drivers?

Winehq Mac Os X

As of 1.5.28, the Mac driver is the default driver. If on an older release, you can force using the Mac driver by either:

Winehq For Mac Os X 10.10


Winehq For Mac Os X64

Or by editing the registry key 'graphics' under HKCUSoftwareWineDrivers. It should specify the load order, e.g., 'mac,x11'

Retrieved from 'https://wiki.winehq.org/index.php?title=MacOS_FAQ&oldid=3352'