Doom3 and 32bit games on 64bit

Anything related to gaming on Linux Mint including game discussion or questions concerning Steam or Wine.
Forum rules
Before you post read how to get help. Topics in this forum are automatically closed 6 months after creation.
Locked
maciimacii

Doom3 and 32bit games on 64bit

Post by maciimacii »

Running 32bit Doom3 on 64bits with sound working (also for Quake4 sound) using the ia32 libraries.

Doom3/Quake4 have a alsa sound conflict with pulseaudio and the 32bit alsa-oss wrapper gets around it.

Download and install the 32bit ia32-libs and ia32-alsa-oss libraries.

http://security.ubuntu.com/ubuntu/pool/universe/i/ia32-libs/ia32-libs_2.7ubuntu26.1_amd64.deb

http://home.comcast.net/%7Edeletebox/ia32-alsa-oss_1.0.10-1_amd64.deb

Install the 64bit alsa-oss package as well and copy the 64bit aoss to aoss32 and edit aoss32 to point to the 32bit libraries.

sudo apt-get install alsa-oss

copy /usr/bin/aoss to /usr/bin/aoss32

sudo cp /usr/bin/aoss /usr/bin/aoss32

Edit aoss32 and replace the libdir= line with libdir=${prefix}/lib32

sudo gedit /usr/bin/aoss32

then make aoss32 executable

sudo chmod +x /usr/bin/aoss32

then set the library load path

export LD_LIBRARY_PATH="/usr/lib32:$LD_LIBRARY_PATH"

then start Doom3 and choose oss and stereo speakers in the Doom3 system settings.

then restart Doom3 using

aoss32 doom3

and sound should work with no problems.

No need to stop pulseaudio or to uninstall it.

A Doom3 startup script would be

export LD_LIBRARY_PATH="/usr/lib32:$LD_LIBRARY_PATH"
aoss32 doom3

The 64 bit Nvidia driver has an option to install Nvidia's 32bit opengl driver which is needed for Doom3.

I don't know about ATI.

If a 32bit system is being used then just installing alsa-oss and starting Doom3 with aoss doom3 is all that is needed.
Last edited by LockBot on Wed Dec 28, 2022 7:16 am, edited 9 times in total.
Reason: Topic automatically closed 6 months after creation. New replies are no longer allowed.
User avatar
xenopeek
Level 25
Level 25
Posts: 29612
Joined: Wed Jul 06, 2011 3:58 am

Re: Doom3 and 32bit games on 64bit

Post by xenopeek »

maciimacii wrote:Download and install 32bit ia32 libraries.

http://security.ubuntu.com/ubuntu/pool/ ... _amd64.deb
Why use those obsoleted ones? The current package is called ia32-libs-multiarch, doesn't that one work?
Image
maciimacii

Re: Doom3 and 32bit games on 64bit

Post by maciimacii »

Maybe they would.

I did it this way because this way because it works for Ubuntu 12.04/Mint 13.
Last edited by maciimacii on Thu Jul 25, 2013 11:23 am, edited 1 time in total.
maciimacii

Re: Doom3 and 32bit games on 64bit

Post by maciimacii »

Another thing is the libstdc++.so.6 and libgcc_s.so.1 files in the doom3 directory.

These files are old versions and result in a segmentation fault when doom3 is quit and sometimes these files interfere with the opengl driver and can prevent doom3 from starting up.

If doom3 is running in fullscreen, then after doom3 exits, Mint (especially Cinnamon Mint) might not return to it's original video mode from the doom3 video mode and the Mint display might get stuck in the doom3 video mode because of the old libstdc++.so.6 and libgcc_s.so files in the doom3 directory causing a segmentation fault when doom3 exits.

So, rename /usr/local/games/doom3/libstdc++.so.6 and /usr/local/games/doom3/libgcc_s.so.1 so that doom3 loads the newer versions of these files that are already on the system.

If screen tearing happens with Cinnamon then

sudo gedit /etc/environment
add at bottom:
CLUTTER_PAINT=disable-clipped-redraws:disable-culling
CLUTTER_VBLANK=True
Last edited by maciimacii on Thu Aug 01, 2013 11:51 am, edited 4 times in total.
Booman

Re: Doom3 and 32bit games on 64bit

Post by Booman »

Awesome! Thanks for the instructions.
Have you tried the [url=http://store.steampowered.com/app/208200/]BFG Edition[/url] yet in Linux?
I'm not even sure if it will run natively or not...
maciimacii

Re: Doom3 and 32bit games on 64bit

Post by maciimacii »

Booman wrote:Awesome! Thanks for the instructions.
Have you tried the [url=http://store.steampowered.com/app/208200/]BFG Edition[/url] yet in Linux?
I'm not even sure if it will run natively or not...
Thanks, No I havn't tried the BFG Edition.

The BFG Edition can be compiled on someones Linux system whether it's 32 bits or 64 bits, so once it is compiled then it should just run on someones system.

The instructions for Linux BFG are here http://www.thepowerbase.com/2013/01/building-doom-3-bfg-edition-from-source-part-1/
Booman

Re: Doom3 and 32bit games on 64bit

Post by Booman »

Awesome, I'm glad someone has given some attention to the BFG edition for Linux.
Thanks
maciimacii

Re: Doom3 and 32bit games on 64bit

Post by maciimacii »

xenopeek wrote:
maciimacii wrote:Download and install 32bit ia32 libraries.

http://security.ubuntu.com/ubuntu/pool/ ... _amd64.deb
Why use those obsoleted ones? The current package is called ia32-libs-multiarch, doesn't that one work?
I've been trying to work out a method of getting doom3 running on a multiarch system with working sound, without using the older ia32 libraries.

https://help.ubuntu.com/community/MultiArch

From what I understand (which might not be totally right), the ia32 32 bit libraries that used to be in /usr/lib32 have basically been moved to /usr/lib/i386-linux-gnu in the ia32-libs-multiarch package and the 64 bit libraries are in /usr/lib/x86_64-linux-gnu (There are also other libraries in /lib/i386-linux-gnu and /lib/x86_64-linux-gnu)

So, the Doom3 alsa/pulseaudio audio delay problems can be solved by using aoss and setting the doom3 driver to oss.

So,
Install the 64bit alsa-oss package and copy the 64bit aoss to aoss32 and edit aoss32 to point to the 32bit multiarch libraries.

sudo apt-get install alsa-oss

copy /usr/bin/aoss to /usr/bin/aoss32

sudo cp /usr/bin/aoss /usr/bin/aoss32

Edit aoss32 and replace the libdir= line with libdir=${prefix}/lib/i386-linux-gnu

sudo gedit /usr/bin/aoss32

then make aoss32 executable

sudo chmod +x /usr/bin/aoss32

then doom3 can be started by using aoss32 doom3.

Then there are the opengl 32 bit libraries ie Nvidia and ATI.

On my Ubuntu 12.04 system, the Nvidia 32 bit opengl libraries got installed into /usr/lib32, the same directory as the ia32 libraries.

If the Nvidia (or ATI) 32 bit libraries are getting installed into /usr/lib32, then the system doesn't really know where they are because they are not in the multiarch /usr/lib/i386-linux-gnu directory.

So, I think that the /usr/lib32 path would need to be added to the library loader path so that the system can find the opengl Nvidia (or ATI) opengl 32 bit libraries.

So, doom3 would need to be started with

export LD_LIBRARY_PATH="/usr/lib32:$LD_LIBRARY_PATH"
aoss32 doom3

I havn't tried this multiarch method, but it should work (maybe with a few tweaks).

I have tested the ia32 libraries doom3 method outlined in the first post and it works.

The issues with doom3, are that doom3 needs 32 bit libraries and doom3 has a alsa/pulseaudio sound delay problem.

There are some posts around the net suggesting how to get around the doom3 alsa/pulseaudio problem, but the only ones that seems to work consistently is to either suspend pulseaudio or use aoss and set the doom3 driver to oss.

The aoss method is more convenient than suspending pulseaudio.
hokuspokus

Re: Doom3 and 32bit games on 64bit

Post by hokuspokus »

Hallo all

I installed Doom3 demo on my system.
I get this message when I start the game.

progs/environment.vfp
glprogs/environment.vfp
-------------------------------
WARNING: vertex array range in virtual memory (SLOW)
signal caught: Segmentation fault
si_code 1
Trying to exit gracefully..
Shutting down sound hardware
----------- Alsa Shutdown ------------
close pcm

Anyone know how to fix this ?
thnks
maciimacii

Re: Doom3 and 32bit games on 64bit

Post by maciimacii »

Seems to be an opengl driver error.

You might not have the right opengl driver installed for your card or if you are running on 64 bits then doom3 might not be able to find the 32 bit opengl driver for your card.

Nvidia has an option to install the 32 bit Nvidia opengl libraries and doom3 needs them, I don't know about the ATI drivers but they probably install 64 bit and 32 bit opengl drivers as well..

If you are running doom3 on 64 bits then just follow my posts above.
Locked

Return to “Gaming”