Linux

Patching Wine from Source

Not many people seem to know this, however, it is relatively easy once you get the hang of it. Imagine you have just downloaded a patch (.diff/.patch) for Wine and don’t have a clue where to start with patching Wine yourself. This tutorial will teach you how to do exactly that.

I will be using this wine tutorial with some additional little tips and tricks to deliver a complete and thorough tutorial.

Now if you are doing this for the first time you will need to follow this initial step. Punch this into terminal and run it:

sudo apt-get build-dep wine //gets the dependencies required to compile wine
sudo apt-get install make //gets the (not default installed) make "program" which compiles the actual source code

Note: Once these two lines have been run once they will never need to be run again.

We now continue with downloading the wine source code: http://sourceforge.net/projects/wine/files/Source/. On the page will see a list of files and folders. To choose the correct one simply choose the version you want and download the .tar.bz2 and NOT the .tar.bz2.sign. If you download the .sign file you will not get the actual source code.

Now after you have downloaded the .tar.bz2 extract it to, say, your home folder so the path will look something like: “/home/someone/wine-1.1.32”. After the extraction is complete download and save the patch into the Wine source code directory (i.e. “/home/somoneone/wine-1.1.32/SetPixelShader.patch”).

Note: if you open up the patch in, say, a web browser from Wine HQ or a similar site then simply do right click->save page as and the page will save correctly.

After you have the patch saved within the Wine source code directory simply cd in terminal:

cd /home/someone/wine-1.1.32

After you have changed the directory simply run in terminal:

patch -p1 < SetPixelShader.patch

This will display a progress of “hunks” installing. After this is completed you may proceed to configure, compile, and install the new Wine. In order to do that you must run the next three commands (within the same terminal window, if you close that terminal window open a new one and cd to the Wine source code directory):

./configure
make depend && make
sudo make install

These commands may take some time depending on how big the patch you applied was and how many patches that were applied since last compile. Once make install is completed your Wine is ready to be used. Enjoy :).

PS. Almost forgot; to uninstall simply cd in terminal to the wine source code directory (i.e. “/home/someone/wine-1.1.32”) and run:

sudo make uninstall
Advertisements