I do not follow the WineX progress anymore. If this tutorial doesn't work for
you, then I apologize. You can probably figure out how to make it work, or
someone could help you get it going.
But maybe your efforts are misplaced. Maybe you should work on contacting
developers and letting them know that you exist and want to play their games
on Linux instead of emulating Windows. Don't give me this "I'm just one person"
crap either. *I* am just one person, and *I* am doing it. If you do it too, that
will make at least two of us. Imagine if ALL of the people who used this tutorial
actually contacted a handful of developers, expressing our interest in a native
Linux port of the game? Are you willing to save the Linux gaming market? Or are
you only concerned about playing the latest
Windows games on Linux? If
you are in the latter, something is wrong with your head. Windows games should be
played on Windows, and Linux games on Linux. Why are you buying Windows games?
For the purpose of this tutorial, I am assuming that you have gcc installed
and working, as well as automake and autoconf. On top of this, you should have
your video card up and running properly, meaning that you can play other
games, such as Tux Racer at a reasonable framerate. Also, you need to have the
cvs package installed, in order to run the cvs program.
First of all, you need to download WineX's source via TransGaming's CVS
repository. Open your home directory, and choose a folder in there for the
WineX installation to go. I made a directory called "installs" and use that.
When you download the source, it will create it's own subdirectory called "wine"
so you don't need to make one yourself.
Start your Internet connection now, if you haven't already.
Now open up a terminal in that directory. You can do this in KDE by pressing
CTRL+T. Type or copy and paste this command into the console window:
cvs -d:pserver:anonymous@cvs.winex.sourceforge.net:/cvsroot/winex login
Then press
Enter. You should then be prompted for the password. Just press
Enter again, as it is a public CVS and there is no password.
Now you will be left with a blank prompt. Type this in:
cvs -z3 -d:pserver:anonymous@cvs.winex.sourceforge.net:/cvsroot/winex co wine
Then press
Enter again. Now your system will begin retrieving all of the
source code from TransGaming.
While this is going on, you may want to continue on to the next part, which is
making sure that you have the necessary dependencies installed.
(After the source is done downloading, you will want to perform these steps: at the
console, type in
cd wine and press
Enter. Then type in
cvs update
-dPA and press
Enter. This will ensure that you have the most up-to-date
version of WineX freely available.)
If you like to use the commandline, you can alternately do this in a root console:
urpmi libxpm4-devel jadetex tetex-dvips libcups1-devel mesa-common-devel
libbinutils2 freetype-devel libalsa-devel
Otherwise, you can follow the instructions on how to use Software Manager.
Please note that these dependencies were recorded with Mandrake 8.1. When I installed
Mandrake 8.2, I installed all the dependencies needed to build the most recent CVS, so
these may not be the same with Mandrake 8.2, or with newer CVS. Please contact me
if you have any information regarding the dependancies needed.
Open up Software Manager and do a search for each of the following packages in
the "Installable" section:
libxpm4-devel
jadetex
tetex-dvips
libcups1-devel
mesa-common-devel
libbinutils2
freetype-devel
libalsa-devel
If you find any of them, check them off and install them.
Once all of the dependencies are installed, and the source is done
downloading, you can move on to making sure that you aren't missing
anything. I recommend archiving the new wine folder just in case you
want to use it later without downloading it all over again. It is
also handy to keep on a separate partition in the even that you format
your drive and want to reinstall it. But maybe that's just me...
At the console, type in ./configure --disable-debug --disable-trace
CFLAGS="-Os -O2 -Wall -mpreferred-stack-boundary=2" and press
Enter. If you missed any dependencies, it will tell you which
files it is missing. Install the proper dependency and delete the
configuration's cache file. To delete the cahce file, type in: rm
config.cache and press Enter. Then run the configure command
again. Rinse and repeat until you get no errors.
Next we need to actually compile WineX. To do this, type in make depend
&& make and press Enter. It should take a long time, but the
amount depends on the speed of your system. On my system it takes roughly
15 minutes to compile everything.
You may experience this warning message when you begin compiling:
*** Warning: you explicitly linked in a thread-safe OpenGL version. If you
*** experience unusual crashes on DirectDraw games, try first to disable OpenGL
*** support before reporting bugs.
This is normal, and WineX still works fine after a successful compilation
and installation.
You may also encounter this error:
../../include/wine_gl.h:31:20: GL/glu.h: No such file or directory
This can be fixed on NVidia-based systems by doing this in a new console
(only a recommendation): Type in su and hit Enter. Assuming
you have the file /usr/X11R6/include/GL/gl.h on your system, type in
ln -s /usr/X11R6/include/GL/gl.h /usr/X11R6/include/GL/glu.h and
press Enter. This will make a symlink to the file and will allow
WineX to compile. Now close this console and go back to the other one and
resume compilation.
Once this is done, you can try to install the whole thing, and it should work
fine. Do so by switching the user to root. Type su and press Enter.
Now type in the root password, if you have one set.
Begin installing by typing make install and press Enter
to start the process of installing.
Once it is done, you will need to create your ~/.wine/config file. To do this,
download this program here: winesetuptk.rpm
into a directory of your choice. For purposes of this tutorial, I will assume
you just downloaded it into your home directory.
Note: I did not create this RPM, so if there are problems with it, it is not my
fault, but it works just fine for me.
Open a console. Type in su and hit Enter. Now type in rpm -ivh winesetuptk.rpm
followed by Enter.
Once this is installed, type exit and hit Enter.
To start the GUI config tool, in the console, type in winesetuptk and hit Enter.
The file you want to edit is called ~/.wine/config. Just mess around with the program,
as the options are mostly self-explanatory. The main sections you will want to configure are
the Drives and Paths.
When you are done, click on the Finish button. The config file is written now. If users
request a more advanced tutorial on this section, I would consider adding it here.
Now, to test it all out and see if it works, type in something such as:
wine notepad and press Enter in the console. If Notepad runs, then you
have done it right! You can do basically the same thing now for your games, just
open a console and cd to the proper directory. Then run it using the
same command line. Note that this will only work if you have a correct path
to Notepad's executable in your path, as configured in your ~/.wine/config file.
With more recent versions of WineX CVS, more and more users have been experiencing
the problem of the missing libnt.dll file. The error looks something like this:
wine: error while loading shared libraries: libntdll.so: cannot open shared object
file: No such file or directory
Here is a simple procedure to remedy this problem:
Open a console. Type in su and hit Enter.
Type in slocate -u or updatedb (they both do the same thing). This updates
the database of your entire filesystem.
Next, type in locate libntdll.so and hit Enter. This will return a full
file path, such as: /usr/local/lib/libntdll.so.
Now type in pico /etc/ld.so.conf and hit Enter. Note that you can use
your favorite text editor here in place of pico, such as vi or emacs.
Ensure that the path resulted from the above command is listed in the file. For example,
if the line
/usr/local/lib
isn't in the file, add it to the end. Save the file
and exit the editor.
Now, just type in ldconfig and hit Enter. This will reload the library paths.
This should do the trick.