Jump to content

ET crash on Linux


SunLight

Recommended Posts

  • Clan Friend

Yesterday I wanted to run ET after a long time... and it crashes for segmentation fault :s

ran it through gdb and I get this:

 

Using XFree86-VidModeExtension Version 2.2
XF86DGA Mouse (Version 2.0) initialized
XFree86-VidModeExtension:  Ignored on non-fullscreen/Voodoo
Program received signal SIGSEGV, Segmentation fault.

0xf7c08191 in xcb_writev () from /usr/lib32/libxcb.so.1

(gdb) backtrace

#0  0xf7c08191 in xcb_writev () from /usr/lib32/libxcb.so.1
#1  0xf7e833ce in _XSend () from /usr/lib32/libX11.so.6
#2  0xf7e79265 in XQueryExtension () from /usr/lib32/libX11.so.6
#3  0xf7e6d0ec in XInitExtension () from /usr/lib32/libX11.so.6
#4  0xf7e41d6c in XextAddDisplay () from /usr/lib32/libXext.so.6
#5  0xe8aea6c3 in ?? () from /usr/lib32/libGL.so.1
I checked the log for updates and I see that recently it updated to lib32-libxcb-1.12-1  libxcb-1.12-1, from the previous version (1.11.1-1)

 

I downgraded, and ET starts. it goes past the 'XFree86-VidModeExtension:  Ignored on non-fullscreen/Voodoo' message and continues to

 

Using 8/8/8 Color bits, 24 depth, 0 stencil display.
 

but what if I don't want to downgrade that? seriously, I think I should have a partition just for ET without system updates, Linux is such a pain in the .... some time ago I had a problem with another package that screwed the mouse movement entirely. 

I guess I have to play with some r_settings to see if I can make it run with the new package. But I don't know if it's possible at all. maybe r_colorbits

 

If I find a solution I will write it here, in case someone else has the same problem

  • Like 2
Link to comment
Share on other sites

Similar to you I've tried installing ET on linux manually before and it resulted in much frustration (I couldn't get my sound to work). After that, I got ET to run on linux after simply installing a "ET" package from an external source. Here is the page for ET. Read the how-to to see how to add external package sources.

 

I recommend you try this.

Link to comment
Share on other sites

  • Clan Friend

Similar to you I've tried installing ET on linux manually before and it resulted in much frustration (I couldn't get my sound to work). After that, I got ET to run on linux after simply installing a "ET" package from an external source. Here is the page for ET. Read the how-to to see how to add external package sources.

 

I recommend you try this.

thanks, but I have used ET for a long time there, I never reinstalled ET, it just stopped working after an OS update for that package I mentioned (since recently I haven't played at all, I realized only now). In fact it works again if I downgrade that package (btw I use Arch Linux). Therefore, reinstalling ET would be useless.

 

I tried etlegacy, same crash. I tried Windows version of ET through wine -> again same crash.

 

I tried to copypaste a minimal opengl code from et source into a little c file, just to call glXChooseVisual with the same parameters as ET (because it crashes there).

 

I see that if I compile it for 64bit, it doesn't crash. But if I compile it for 32bit, it segfaults like ET.

 

That means there must be a problem in the 32 bit version of that lib (or maybe the gfx card drivers?), I guess I have to wait till they fix it in some future version, or maybe I could put the old library in the ET folder and force it to load that, instead of the one in /usr/lib32/ but I don't know how many old libraries it would need, these things often end up into a chain of downgrades.

 

But since I don't play (almost) anymore, the best way would be to either play from Windows or from an older Linux version.

 

I tried many combinations of r_colorbits depthbits and everything, still crash. Hopefully someone will find the bug and update something. -.-

Link to comment
Share on other sites

Hmm, you've given this more thought than I have and are obviously more experienced in these matters. Sorry for the dumb suggestion :P

 

Seems like you either need to wait for them to fix the package or play with a downgraded version.

 

What GPU do you use? Do you still find that it has decent drivers?

Link to comment
Share on other sites

AMD GPU drivers "broke" the game on windows also? (r_primitives 2 fixed for us, Win users)... I see X11 on the error list, maybe related?

And yeah why not to create USB Live with some linux to play ET, no need to update, just plug and play;) Considering USB sticks are cheap as 2 beers nowadays:P Taking the USB stick would be used only on 1 PC for security reasons(malware etc).

  • Like 1
Link to comment
Share on other sites

  • Clan Friend

AMD GPU drivers "broke" the game on windows also? (r_primitives 2 fixed for us, Win users)... I see X11 on the error list, maybe related?

And yeah why not to create USB Live with some linux to play ET, no need to update, just plug and play;) Considering USB sticks are cheap as 2 beers nowadays:P Taking the USB stick would be used only on 1 PC for security reasons(malware etc).

 

Yeah, that's probably the best thing to do. No more headaches, even though it's nice to have everything in the same partition.

Link to comment
Share on other sites

  • Clan Friend

I managed to make ET work by using the old library, I extracted libxcb.so.1.1.0 from the package file for the old version (and the symlinks libxcb.so and libxcb.so.1) and I put them in a folder, then I start ET like this:
 

#!/bin/bash
XCBPATH="/path/to/those/files"

if [ -z "$LD_LIBRARY_PATH" ]; then
  LD_LIBRARY_PATH="$XCBPATH"
else
  LD_LIBRARY_PATH="$XCBPATH:$LD_LIBRARY_PATH"
fi

export LD_LIBRARY_PATH

et.x86 blablabla 

And it works, so I don't have to downgrade that package system-wide for now. It was that simple. I thought I would have to put old versions of other libraries as well but I was (luckily) wrong.

 

But I think I will still look around for some lightweight linux distro that can be run easily, and which supports AMD official drivers.

 

In the past I tried Puppy Linux and even if it runs everything as root (as far as I remember), it's nice because you can put it in any folder of any partition, even an ntfs partition, and it's like a livecd so every time you run it you get the same system. I could make one for ET, this way no matter how I update Arch Linux I will play ET from there.

Link to comment
Share on other sites

Well you can always try ARCHPup :) best of both worlds?

 

BtW. it looks like they somehow messed up the cleaning part of the video package.

You could always try the difficult path of recompiling and cleaning up yourself :)

  • Like 1
Link to comment
Share on other sites

  • 2 weeks later...

I've had much better luck sticking with an enterprise Linux. My install on Cent 7 has been fairly stable, with a couple of annoyances.

 

Kernel updates and GL library updates are dicey.

 

 

If I switch to windowed mode, and don't switch back to full screen before quitting, the next time I run, I only get one normal map, then after if I hit the console button everything I type goes to the original terminal I launched it in. Have to use ctrl+C to quit, then restart, trhen switch to windowed, then full-screen again.

 

Sound will also randomly shit itself with alsa lib underuns, but running:

export PULSE_LATENCY_MSEC=60

 

usually fixes it.

  • Like 1
Link to comment
Share on other sites

  • Clan Friend

Kernel updates and GL library updates are dicey.

Indeed. Meanwhile, a new update fixed my problem, but what's going to be next?

 

I also realized that with an old install of Fedora (32bit) I had cloned years ago (and I don't update anymore since it's old) I get slightly more fps than 64bit Arch Linux + new kernel and drivers, I think when it comes to old games like ET updates aren't necessarily a good thing. If I have other problems in the future I'll play from that old partition or from Windows.

Link to comment
Share on other sites

I could do that, but I hate rebooting. I run several VM's off my desktop, so rebooting means actually rebooting like 4 servers.

 

My uptime on the desktop is over 49 days at the moment.

  • Like 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.