How to use Windows chess engines on Mac ?

Updated: Oct 25

In this article, you can find out how to use windows engines on Mac in the same way as native ones compiled exclusively for Mac.


If you are interested in using Windows and Windows software on the Mac, then I invite you to visit the article page: Mac and Windows in one house.


Almost all modern chess engines are available for Mac. Starting from the strongest ones like Dragon by Komodo Chess or Berserk through RubiChess and Hiarcs, to Lc0, Shredder and Prophet.


I could go on listing for a long time.


Using Intel-based Macs or the latest Macs with Apple Silicon processors, computer chess enthusiasts have excellent engines and software at their disposal.

Undoubtedly, today with Macs any chess player can fully realize his passion for chess.


Take a look here to learn more about chess software for Macs

In the past, this was not always the case. Until a few years ago, most chess engines, including the free ones, were made available only to Windows computer users.

I am thinking of engines such as Houdini, Junior, which have richly written their pages in the history of computer chess, but also those less known but playing very interesting chess such as Vajolet, iCE and many others.


There are many enthusiasts and fans of especially older chess engines who use mainly Macs and are interested in using these perhaps no longer the newest, but still very attractive chess engines.


That it's not only a kind of nostalgia (Houdini the long-time dominator of the top spots on the ranking lists), it's also a desire to use engines that play in a beautiful and unique style (Junior, Vajolet) understandable to.... human.


This article is in response to the many questions I have received about using Windows engines in the same way as native ones compiled exclusively for Mac.


I would like to take this opportunity to wholeheartedly thank user Hasimir, whose 2014 forum post inspired me to take action to use Windows chess engines on a Mac. Admittedly, in his post Hasimir focused on 32-bit engines, however the idea of using 64-bit engines on modern Macs - has not significant changed. Thanks!



Before we get into the details, some important information.


  • This article will describe how to use 64-bit windows chess engines on a Mac. However, the way to deal with 32-bit windows engines is analogous, albeit requiring an older Mac with a processor that supports 32-bit programs. See the paragraph describing the Wine program for details.

  • Knowing how, installing windows chess engine on Mac is very easy.

  • In order to use the windows chess engine/s, we will use a free software called Wine 7.0 to do so.

  • Using Wine 7.0, not every windows chess engine will allow itself to run. Such engines, the more recognizable ones, include Rybka, SlowChess and Rebel, for example.

  • With Wine 7.0, many chess engines can be used just as on Windows; these include Junior, Houdini, Vajolet, iCE, Uralochka, Revenge and others.

  • Due to the evolution of Wine software, it is possible that in the future it will be able to use other chess engines such as Fritz, Chiron, for example, which do not currently run on Wine 7.0.


I would like to emphasize that I do not give any guarantee, commitment that a particular chess engine will work on the Mac you use.

The Wine program is being developed all the time and still does not ensure that every windows chess engine will run on a macOS computer.


Since Wine has been a freely available software for many years, it can be installed on a Mac in several ways, such as through the Crossover application or MacPorts project.


In this article, in order to keep things as simple as possible with free software, we will use the installation of Wine through brew package manager.



What do you need ?


1. Internet connection.


2. Basic skills in using the Mac's Terminal program.


If you don't know anything about the Terminal program, then before you go any further, I suggest that you first get that necessary but small dose of basic knowledge that is widely available on the Internet.


3. Xcode Command Line Tools.


On your Mac, it is most likely already installed. After typing the command:


xcode-select --version

You can check if this package is installed and in what version.


If you need to install or upgrade Xcode Command Line Tools, just type the following commands:

xcode-select --install

In the window that appears, click on the Install button.


Xcode Command Line Tools is a free suite of tools. If you agree with the License, then click Agree.



Now the download and installation will take place.


Depending on the speed of your Internet connection, the process will take about a few minutes.


4. Wine program.


Wine (originally acronym for "Wine Is Not an Emulator") is a free compatibility layer capable of running Windows applications on your Mac.


"

Instead of simulating internal Windows logic like a virtual machine or emulator, Wine translates Windows API calls into POSIX calls on-the-fly, eliminating the performance and memory penalties of other methods and allowing you to cleanly integrate Windows applications into your desktop.

"

Source: Wine


Wine is an amazing piece of software that, in addition to allowing us to use Windows engines, will provide their native-like speed ( see MCERL and the ranking achieved by Stockfish 15 (Wine) ).


First we need free software called brew, which we will next use to install Wine.

Type:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

Confirm the brew installation by entering your Mac account password.


Confirm to continue by pressing the Enter key.


After some time, the installation of the brew will be completed.


Next steps: type the following three commands that will appear on your Terminal program. After each by pressing Enter.


In this case, the following commands appeared on my Terminal for input:

echo '# Set PATH, MANPATH, etc., for Homebrew.' >> /Users/chessengeria/.zprofile

echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> /Users/chessengeria/.zprofile

eval "$(/opt/homebrew/bin/brew shellenv)"


Now we're going to install Wine.


The brew program will check your computer before installing Wine and correctly select the latest stable Wine package to use on your Mac.

Type in Terminal:


brew install --cask wine-stable

After the time it takes to brew a cup of coffee, Wine will be installed ;)


Let's check what version of Wine has been installed. When you click on the Launchpad icon, an icon named Wine Stable should appear.


After clicking on the Wine Stable icon, a window with information will open.

A stable version of Wine numbered 7.0 was installed on my Mac.


My Mac uses a 64-bit processor, so Wine is ready to run 64-bit chess engines.
Currently (October 2022) it is not possible to run 32-bit engines via Wine on a Mac with a 64-bit processor.
If you install Wine on a Mac with a 32-bit processor, then you can only use 32-bit chess engines.


Congratulations!!

You have done well to prepare your Mac to run the first windows chess engine.


Now it's time for the most pleasant activity of the whole process - choosing a windows chess engine :)


.....

..........

................

.....................



Alright, I choose Vajolet :)


You can find more information about this engine on its website.

Vajolet is a free UCI chess engine, and you can download it from here.


Once downloaded, the Vajolet engine should be visible in the Downloads directory.


To run the Vajolet chess engine in Terminal, you must point to the correct path to the Wine program.


By default, 64bit Wine is installed in: /opt/homebrew/bin/wine64

To check this, type the command in Terminal:


which wine64

As you can see in the image below, on my Mac wine64 is located in the default location.


If wine64 is located in a different directory on your computer, then you will need to provide the correct path to this program.

Good. You know what the path to wine64 is.

In terminal, type the path to wine 64


/opt/homebrew/bin/wine64

Now, press the spacebar and drag the Vajolet chess engine icon to the Terminal


After dragging, the command in Terminal should look like this:


Pay attention, please.


When you press enter, Wine will be launched for the first time, along with the necessary configuration. A lot of messages will appear.

Don't worry about it. This is normal.

The configuration of the Wine program will happen only once.


After the Wine setup is complete, you may see a window with this information:


Press Cancel.

The Vajolet engine will be started.


To approve running Vajolet engine in macOS, you only need to go to System Preferences - Security & Privacy once and press Allow Anyway.


Return to Terminal and type quit.

There will be a close of the Vajolet engine.


After typing the commands to start Vajolet again, press enter, and you will finally see Vajolet running - this time without any Wine configuration messages.


Type:

uci

and press Enter


Vajolet reports readiness for work.


The way I've shown above, you can prepare the windows chess engine of your choice to work on macOS.

Note!

Let me remind you that not every windows chess engine can be run through Wine.



Using windows chess engine in dedicated software.


BanksiaGUI

I mainly use for matches and tournaments between chess engines. Banksia is a very stable and easy to use GUI. Almost 100 different chess engines that I have installed support Banksia - including the windows ones.


To add a windows chess engine, fill in the fields of the Add Engine window as follows:


After click OK button, if you do everything right, then Vajolet will be included in the list of available engines in BanksiaGUI.


From this point on, you can use Vajolet or any other windows chess engine in BanksiaGUI in the same way as other engines for Mac.

Example: a match between the Vajolet and Velvet engines.


Of course, Banksia allows you to edit the engine name. I took advantage of this possibility and added the addition (Wine) to the name of windows engines.



Hiarcs Chess Explorer and Hiarcs Chess Explorer Pro


To use the windows chess engine in Hiarcs, you need to prepare an executable file to run the engine of your choice, in this case Vajolet.


1. In any text editor, such as TextEdit, which is available on any Mac, create a file named Engine.cc. The name of the file can be anything else.


2. Type or paste the following code into the file:

#include <stdio.h>
#include <stdlib.h>

int main()
{
system("/opt/homebrew/bin/wine64 /Users/chessengeria/Downloads/Vajolet2_2.8.exe");
}  

Close the Engine.cc file by saving it to a location of your choice (eg. Downloads).