NOTE: I AM RUNNING MY LAPTOP IN ~AMD64 MODE AND EVERYTHING WORKS GREAT, BUT NOT THE NVIDIA 6629 DRIVERS - BE WARNED ABOUT THEM (success may vary)!!! ALSO, MOVING TO ~AMD64 FROM AMD64 MAY BE THE POINT OF NO RETURN, SO USE DISCRETION IF YOU SET IT IN /etc/make.conf

1) Make sure you have "nptl" and "multilib" set in your use flags, because this is VERY important for getting maximum performance. You will then need to grab the latest version of glibc and rebuild it twice for compatibility (portage does this for you)!

Code:

# ACCEPT_KEYWORDS="~amd64" USE="nptl multilib" emerge -v glibc

You might have to wait a good time for this to compile, even on your perky AManDa machine

2) Now go ahead and grab the latest video drivers. I know that some people have reported a lot of problems with the Nvidia 6629 drivers, and I ran into them as well. You can be sure that 6111 are stable (possibly a little slower). If you're an ATI owner, do what you normaly do to get the latest drivers. My code is for NVIDIA OWNERS ONLY!!!

You will need to reboot here if your driver is built into the kernel, otherwise, just remove and insert the module.

Code:

# rmmod nvidia; insmod nvidia

3) Purchase a Cedega binary with support from http://www.transgaming.com. You can then install it through portage using the prebuilt cedega-????.tar.gz, where ???? is the version number. NOTE: You many have to change the name of the file when you place it in your local portage tree!!!

Code:

# emerge -v cedega

It should give an error and some instructions. You will now see what the name of the file needs to be renamed to. Let's do that.

Now, since some versions of Cedega are known to be watermarked, their MD5 hashes may be different for your file and thus will fail to install through portage without the "--digest" option. Use this option ONLY if it fails to install otherwise, as someone may have modified your binary if it came from a questionable source. BE WARNED, THIS IS A SECURITY RISK!!!

Code:

# emerge -v --digest cedega

Portage should now detect that the file is in the portage tree and go through the process of installing it. At the end, you will notice some comments about binfmt_misc. This step is necessary if you have binfmt_misc built into your kernel or loaded as a module, which is highly recommended for top performance. Basically, it will improve the ability for the kernel to run WIN32 code in this instance.

I will not detail how to rebuild the kernel with this option, but it is under Executable File Formats if you do a make menuconfig in /usr/src/linux. I have it loaded as a module. You can try my optional commands below to see if you have support already enabled, and if not, maybe a future update to this HOWTO will include better instructions for beginners on how to do this.

You can add the second command to /etc/fstab to have it done for you on every startup if you like. And of course, you should add binfmt_misc to your list of autoloading modules.

4) You are now ready to run the program. The first time it runs it should do some configuration stuff so run it as root.

Code:

# cedega

View the output and follow any instructions that are given. If you see something about pthreads or stack size, don't really worry about them. My laptop runs games very well and I ignore the warning. After much researching on how to fix the error I gave up. Maybe someone can help with correcting this. My hope is that this HOWTO will serve as a Wiki on the Gentoo site so that anyone can make modifications to it and make it better.

You're pretty much on your own now. You can install Point2Play to get games installed, but I find it easier to just mount the cdrom and then issue "$ cedega /mnt/cdrom/setup.exe" or whatever the installer file is. I have successfully installed Grand Theft Auto: Vice City and Steam/Counter-Strike so far. They work flawlessly even when playing online! Doom III I got installed by copying the files over from a Windows based install, but now the Linux version is out and there is no need to emulate it anymore. If you plan to play these games on an older card or a laptop (like I am), it is a good idea to disable the per game visual effect settings such as anti-aliasing and other GPU/CPU hogs. Even with newer cards, you should think about disabling these options if you experience below 30 fps because the 32-bit conversion calls for these advanced options are killing you!

After you install a game it should put an icon on your desktop, or else all your files will be located in in the Transgaming_Drive folder within your home directory and you can run them from there. Be warned, however, that full support for a game's anti-piracy mechanisms may not be implemented by cedega and will fail to run properly. The only way around this is to modify the game binaries yourself or ask Transgaming to add support in a future version. Many titles are officially supported now! Cedega is also great for running Windows-based applications that fail to run under CrossOver Office. There is a myriad of possibilities now thanks to Transgaming.

Kristian Hermansen

PS - Please respond with your comments/suggestions about this HOWTO and what we can do to make it better in the future!!!_________________~ Do the rubberman...do the rubberman...do the rubberman ~

While I greatly appreciate the effort you put into this tutoria, I have some overall suggestions on improving it. Firstly, any time you ever say that a system requires something to be done, it would be good to see the commands that you're executing. Reason being, the people that normally require a tutorial that is as low level as this, don't know what's going on with cedega behind the terminal. for example, you say:

Quote:

You can add the second command to /etc/fstab to have it done for you on every startup if you like. And of course, you should add binfmt_misc to your list of autoloading modules.

It would be great if you could just throw up the command right after those sentances.

As for additions to the tutorial, it would be great if we could get the cedega CVS instructions in here. I tried the winex instructions but it didn't turn out too peachy keen. If someone would be kind enough to post their instructions for cvs cedega, i think i'd love them forever

Oh, and for future reference, it's increadibly inappropriate to spam a number of the topics that you did. For instance: https://forums.gentoo.org/viewtopic.php?t=220650
The How-To post implies you found a solution to that problem, when in fact, the how-to is only how to install, not how to solve any problems. Simply searching for any topic with 'cedega' in the amd64 forum and then replying isn't the best way for people to actually look at this. Content brings readers, not spam.

While I greatly appreciate the effort you put into this tutoria, I have some overall suggestions on improving it. Firstly, any time you ever say that a system requires something to be done, it would be good to see the commands that you're executing. Reason being, the people that normally require a tutorial that is as low level as this, don't know what's going on with cedega behind the terminal. for example, you say:

Quote:

You can add the second command to /etc/fstab to have it done for you on every startup if you like. And of course, you should add binfmt_misc to your list of autoloading modules.

It would be great if you could just throw up the command right after those sentances.

As for additions to the tutorial, it would be great if we could get the cedega CVS instructions in here. I tried the winex instructions but it didn't turn out too peachy keen. If someone would be kind enough to post their instructions for cvs cedega, i think i'd love them forever

Oh, and for future reference, it's increadibly inappropriate to spam a number of the topics that you did. For instance: https://forums.gentoo.org/viewtopic.php?t=220650
The How-To post implies you found a solution to that problem, when in fact, the how-to is only how to install, not how to solve any problems. Simply searching for any topic with 'cedega' in the amd64 forum and then replying isn't the best way for people to actually look at this. Content brings readers, not spam.

About the fstab/binfmt_misc stuff - I only mentioned it because *SOME* people (more knowledgable) may want to try it. It is not necessary unless you actually are going to enable binfmt_misc it in the kernel, which, as most n00bs won't know how to do, I felt that putting in the commands would be detrimental to this HOWTO. If you feel otherwise, okay. Maybe if it goes to the Wiki everyone will edit it to reflect those changes, but I still feel that it would be detrimental in this SIMPLE version of the HOWTO. If we were to make an ADVANCED HOWTO for gamers, I would definitely include it. Argue you're case for including it in this HOWTO and I will consider adding it. I would consider it even more if you posted the commands you want in the HOWTO and they make sense.

About cedega CVS, yes, that is a great idea! I know many people have tried and failed to compile cedega from CVS so if anyone has found a ssolution somewhere on the net, we can test it out and roll it into this HOWTO. I hope that someone can contribute in this area. I still don't think that it is possible to compile cedega as a 64-bit executable, but just a 32-bit compile would be sufficient since many people seem to have trouble about the chroot rumors (which are not necessary).

About your claim that I was SPAMMING, I deny it. I only wanted people that were having issues to view the HOWTO and see if it fixed their problems. The specific post you refer to seems like my tutorial has nothing to do with it, but in fact, I had the same exact problem on my laptop when installing cedega. I offer up this HOWTO as the steps that I took to get around the "sysv/system shared memory" problem. In hindsight, it may have only been a specifi kernel issue, but in this HOWTO I let you know that I am running in ~amd64 mode, which means that I have the latest gentoo kernel in portage. I hope that some people in those five forums (hardly a SPAM if you ask me) find useful info in this HOWTO. Also, I was pretty selective when posting to those threads. If you take a look, I did not simply post to threads with the word "cedega" in it. I hope that you and I can see past this difference in opinion and get to the bottom of the real issue, which is helping the Linux communnity in getting their Windows-based games running on their AMD64 boxes...

Kristian Hermansen_________________~ Do the rubberman...do the rubberman...do the rubberman ~

Just a little question about the whole howto.
Is this ment as a pure preformance guide, or..?

The thing is that my copy or cedega won't run at all on my amd64 system (Error - 21), and I don't see you mentioning that cedega requires "ntpl", "multilib", or "binfmt_misc" anywhere. I thought about trying your instructions you see, but I'm not that keen on recompiling glibc and a bunch of modules just to find out this was a preformance boost for my broken cedega.

A have a few suggestions though There is no need to be a whole ~amd64, since I have succeded in doing more or less the same as you said in the tutorial, running on "pure amd64" (of course nptl and multilib still applies). You are absolutely right about NVidia, though I had to do ~amd64 on them to bring them to cooperate with "pure amd64"

Cheers_________________It is not enough to have a good mind. The main thing is to use it well.
-- Rene Descartes

I am pretty sure, that it has something to do with people that have ati cards. Nvidia cards are working fine but with my ati card and new drivers I cannot use cedega. I am able to use wine but I haven't tried to play games there. ut-2004 works really good though. I still want to get this fix I don't want to be going to windoze to play Halflife 2._________________Registered Linux User #328996
Register Now!Adpot an unanswered post today!

im waiting my amd64 here, so i cant tell, but i think that you dont need to make the hole system instable need?

For example, in axp here ive seted up in /etc/portage/package.keywords instable only for some packages, like gcc, glibc and its friends...
I think you could remove the ACCEPT_KEYWORD="~amd64" (too radical) and include in the /etc/package.keywords only the packages that really matter to be "unstable"_________________------------------------------------
Tiago Scolari

I still haven't figured out how to fix cedega x11drv problem. What I have read around is problems with the path cedega looks at for the drivers but this problem only comes out with ati cards. I've been playing halflife 2 on windoze and I am asshamed ._________________Registered Linux User #328996
Register Now!Adpot an unanswered post today!

well im using nvidia 7174 yes, but im having hardcore errors when trying cedega.

during emerge:

Code:

usr/lib/transgaming_cedega/winex/bin/winebrowserlink.so
usr/lib/transgaming_cedega/winex/bin/winebrowserlink.so will contain runtime text relocations
Text relocations require a lot of extra work to be preformed by the
dynamic linker which will cause serious performance impact on IA-32
and might not function properly on other architectures hppa for example.
If you are a programmer please take a closer look at this package and
consider writing a patch which addresses this problem.
usr/lib/transgaming_cedega/winex/bin/pthreads_stack_test
usr/lib/transgaming_cedega/winex/bin/winedump
usr/lib/transgaming_cedega/winex/bin/regapi.so
usr/lib/transgaming_cedega/winex/bin/regapi.so will contain runtime text relocations
Text relocations require a lot of extra work to be preformed by the
dynamic linker which will cause serious performance impact on IA-32
and might not function properly on other architectures hppa for example.
If you are a programmer please take a closer look at this package and
consider writing a patch which addresses this problem.

.... they stop at: usr/lib/transgaming_cedega/winex/pthread_lib/libntdll.so will contain runtime text relocations
Text relocations require a lot of extra work to be preformed by the
dynamic linker which will cause serious performance impact on IA-32
and might not function properly on other architectures hppa for example.
If you are a programmer please take a closer look at this package and
consider writing a patch which addresses this problem.
usr/lib/transgaming_cedega/winex/pthread_lib/libwine.so.1.0
usr/lib/transgaming_fontinstaller/cabextract
>>> Completed installing cedega-4.3.1 into /var/tmp/portage/cedega-4.3.1/image/

>>> Merging app-emulation/cedega-4.3.1 to /

then it seems to merge, and when i try to run:

Code:

/usr/bin/cedega: line 233: /usr/lib/transgaming_cedega//winex/bin/regapi: No such file or directory

well im using nvidia 7174 yes, but im having hardcore errors when trying cedega.

during emerge:

Code:

usr/lib/transgaming_cedega/winex/bin/winebrowserlink.so
usr/lib/transgaming_cedega/winex/bin/winebrowserlink.so will contain runtime text relocations
Text relocations require a lot of extra work to be preformed by the
dynamic linker which will cause serious performance impact on IA-32
and might not function properly on other architectures hppa for example.
If you are a programmer please take a closer look at this package and
consider writing a patch which addresses this problem.
usr/lib/transgaming_cedega/winex/bin/pthreads_stack_test
usr/lib/transgaming_cedega/winex/bin/winedump
usr/lib/transgaming_cedega/winex/bin/regapi.so
usr/lib/transgaming_cedega/winex/bin/regapi.so will contain runtime text relocations
Text relocations require a lot of extra work to be preformed by the
dynamic linker which will cause serious performance impact on IA-32
and might not function properly on other architectures hppa for example.
If you are a programmer please take a closer look at this package and
consider writing a patch which addresses this problem.

.... they stop at: usr/lib/transgaming_cedega/winex/pthread_lib/libntdll.so will contain runtime text relocations
Text relocations require a lot of extra work to be preformed by the
dynamic linker which will cause serious performance impact on IA-32
and might not function properly on other architectures hppa for example.
If you are a programmer please take a closer look at this package and
consider writing a patch which addresses this problem.
usr/lib/transgaming_cedega/winex/pthread_lib/libwine.so.1.0
usr/lib/transgaming_fontinstaller/cabextract
>>> Completed installing cedega-4.3.1 into /var/tmp/portage/cedega-4.3.1/image/

>>> Merging app-emulation/cedega-4.3.1 to /

then it seems to merge, and when i try to run:

Code:

/usr/bin/cedega: line 233: /usr/lib/transgaming_cedega//winex/bin/regapi: No such file or directory

it complains more around 3 libraries from winex/lib...

anyidea what could cause this?

no idea?
what could ive missed to have this?

may this be about i use ntplonly?_________________------------------------------------
Tiago Scolari