NOTE: Sorry for my english! It is my “school english” which I trained last time more than 3 years ago 🙂
ATTENTION: I made this tutorial as easy as possible, but I require that a little bit of command / shell / terminal usage and MAC, BSD or Linux is available.
First, I have to thanks kardus which helped me to get it all working on my MacBook Pro. I had a few exchange of ideas with him at the AppDB of the WINE HQ.
Because of the actually poor performance of the Mac Beta, I started to check out, what other ways are available to play LoL under OS X. After a short time I recognized, that there are very different ways to get it running. So I tried it with Parallels Desktop, VirtualBox and at least with the Mac Beta Client. All variants had has one minor issue: the performance!
At this time I remembered back to my time with Linux on my Desktop and WINE itself. So I tried to make the same thing like these days before and started to compile WINE on my MacBook. One big problem here are the dependencies. If you want to compile ALL stuff which WINE needs on your own, you are welcome. But this take you much time longer than to use an easier way. This way is based on a software, which enable a package management way like you maybe already know out of Linux and is called “macports”.This wonderful peace of software allows you to install OSS software like under Linux (for example the Debian way: apt-get install SOFTWARE).
Now that you know the background of why you should to this at all, we have some Requirements before we can start with macports and compile WINE for yourself.At first, get the DMG File from the macports Homepage: http://www.macports.org/install.php. It’s the normal way of install a software under MAC, so you should know how to deal with it.At next, we need an XServer for MAC. Why? The easy answear is, that WINE is build on X11, which is the standard graphical system for Linux. Because Apple / OS X has their one way of an graphical system we need for WINE the X11 standard. For this it exists another project which is called “XQuartz”. XQuartz proivdes for your MAC an normal X11 Server, which you can easily install. The XQuartz Server will only gets started up, when it is needed by an software. So now, grep the last XQuartz version from their offical homepage: http://xquartz.macosforge.org/ or get the last version which I was able to picking out for you (2011.01.31) http://xquartz.macosforge.org/downloads/SL/XQuartz-2.6.0.dmg. Install it on the same way like macports.
After these two actions, the requirements are nearly done. At least you will need the biggest one. For compiling on a MAC, you need the XDevelopment Tool from Apple with the SDK of your OS X itself. You will found this on your OS X installation DVD or on the Apple Homepage itself. I prefer you to use your installation DVD. If you want to download it from the Apple HP, you need an Developer account which is free.
The installation of the requirements can take sometime (especially the installation of XDevelop from Apple). But when you’re done with these steps above, we can beginning with the main part (compiling and installing WINE):
1. Open a terminal at your MAC. You can to this by searching for “terminal” at spotlight (right corner).
2. Once, if the terminal is opened up, start typing the following command into the terminal:
sudo port configure wine-devel
Let me explain it as short as possible, what happens now: sudo is the command to start something with administration privileges. port is the command for the macports, which we installed before. configure tells macports what it have to do. This means it should not install wine right now, it should only download it, so that we can manipulate it a bit. At least you see the same of the package, which we want to configure. Here it is “wine-devel”. There is another wine package available on macports, which is easily called “wine”. But the “normal” wine is the last stable version. “wine-devel” the last development release. We need the last development version at all.
3. Now, it can take some time before the terminal reports you, that it is done with working. At this time you can type in commands again and this is want we also want to do next 🙂
4. Change the directory with help of the command “cd” to get into the following directory:
Notice, that you have to change the names “_some_long_name_with_wine_in_it” and “wine-devel-x.x.x” to the versions, that are actually downloaded by macports. If you do this the first time, there is only one directory with these names, so change to it!
5. Next we need a patch for WINE. This have to be, because the LoL GUI uses some commands or something like that, which is not possible to deal with for WINE. But this is easy and you get this patch on an easy way. Type in your console:
curl http://bugs2.winehq.org/attachment.cgi?id=25672 > ole-force-inproc-instead-of-local.patch
to get the required patch from the Wine HQ. curl is an easy to use command line downloader.
6. Now, that we have the required patch, we patch the WINE code with it to make it possible to get LoL with WINE runinng at all. To do this enter in your terminal
patch -p1 < ole-force-inproc-instead-of-local.patch
This should not take longer than 3-5 seconds. Now you’re WINE is patched and ready to get build and installed.
7. With macports you don’t see the whole output of the build process of WINE at all. You will only see a summary, but thats absolutely enough! Now, to start the build process simply type the following command in your terminal:
sudo ports install wine-devel
So this will gonna take a really long time! Grab a cupple of beers and coffees and wait until it is finished. This can take up to 3 oder 5 hours! The simply reason for this is, that all the requierements for WINE itself are builded, too.
8. If the build step is finished you need one thing more, which is called “winetricks”. winetricks is a little script, which allows you to handle easy installations for your WINE prefix, for example Direct X. We need 3 things to get LoL to statup and launch. To get this 3 things type at first following in the terminal:
sudo port install winetricks
With this command the little script get be downloaded and installed in your system. After that you will be able to use it. So, let us get the 3 requirements for LoL itself! Enter in the terminal:
winetricks vcrun2005 d3dx9 ie6
In this case winetricks will get you the Visual Runtime 2005, DirectX 9 in the last version and Internet Explorer 6.
9. That’s it! You’re done! You can now easily navigate with the command “cd” in your terminal where your lol.launcher.exe is located or otherwise you navigate to directory where your installer for LoL is located. You can also patch your LoL version. I tested it 2 oder 3 times and it worked without any errors.
If you have the problem, that ingame is no sound available type into your terminal
to start the WINE configuration dialog. Now navigate to “Libraries” click onto “Add” and enter mmdeavapi.dll. At least select the added DLL click on edit an set it to “disabled”.
If your game will freeze, while you chat ingame, start also winecfg , but set easily on the first page your windows version to 2000. After that this should also be fixed!
I hope this little Tutorial will help you to get LoL running under your MAC. If you only want WINE without any patch (for example for other programs and games) you can step point 6. If you do this, the last wine-devel will be build and installed without any special patches or something like that.
If you have any questions, you’re welcome. I’m also thinking about an automatic script for that … I will see if I do that 😉
PS: Want to improve the game settings / performance a little bit? Go to http://appdb.winehq.org/objectManager.php?sClass=version&iId=19141 (official WINE AppDB) and try the game performance hints.
UPDATE: I’ve also wrote an article of how to improve the performance of the game here. This article has some additional informations which aren’t available at the AppDB of WINE.