Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 26121 - app-emulation/epsxe: epsxe segfaults when using pete's mesagl 1.73 plugin (possibly others) because of an incompatibility with /lib/i686/libpthread.so.0
Summary: app-emulation/epsxe: epsxe segfaults when using pete's mesagl 1.73 plugin (po...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Games (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: Gentoo Games
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-08-07 06:30 UTC by Joseph Nievelt
Modified: 2003-08-17 18:16 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Joseph Nievelt 2003-08-07 06:30:48 UTC
epsxe will crash when trying to configure video/sound settings, or even trying
to run the bios (tested with the scph1001.bin bios).  This problem (and the
solution) is listed in the readme.txt for pete's 1.73 mesagl plugin, which can
be obtained from his website at http://home.t-online.de/home/PeteBernert/.  I'm
not even sure this is caused by the gpu plugin, but that's what the readme suggests.

Reproducible: Always
Steps to Reproduce:
1. emerge epsxe
2. Install pete's mesagl 1.73 plugin (may not be necessary, I got this error
before this)
3. create symlinks from ~/.epsxe/plugins and ~/.epsxe/cfg to the files in
/usr/lib/psemu/plugins and /usr/lib/psemu/cfg (also may not be necessary)
4. install playstation binary into the ~/.epsxe/bios/ folder
5. run epsxe
6. go to Config->Video

Actual Results:  
epsxe crashes with message
/usr/bin/epsxe: line 34: 20028 Segmentation fault      ./epsxe

Expected Results:  
The video plugin dialog should come up.

I'm running a pentium 3 with glibc 2.3.2-r1 installed, this can likely be
reproduced on any i686 machine with a recent version of glibc.

I don't think more information is needed.  The fix is listed right in the
readme.txt for the gpu plugin.  Instead of running "epsxe" you can run "env
LD_PRELOAD=libpthread.so.0 epsxe".  There are other fixes listed but this is the
one I used, and it worked fine.
Comment 1 Joseph Nievelt 2003-08-07 07:03:03 UTC
Sorry, forgot to include, I'm running a GeForce4 Ti 4400 (Gainward).(if this helps).
Comment 2 Mårten Woxberg 2003-08-16 18:14:03 UTC
I can confirm that this works.

It should be added as a symlink to epsxe so that you don't have to do it by yourself. (others might not check bugzilla or forums)
Comment 3 Joseph Nievelt 2003-08-17 06:07:41 UTC
You can't symlink to something like "env
LD_PRELOAD=libpthread.so.0 epsxe".  You can only link to  another file.  This could be done with an alias, or (probably the better way) a script.
Comment 4 SpanKY gentoo-dev 2003-08-17 17:19:17 UTC
are you guys using the packages from portage or did you put together your own stuff ?

like, are you using app-emulation/psemu-gpupetemesagl ?

if so, ill add the env thing to the epsxe startup script
Comment 5 Joseph Nievelt 2003-08-17 17:46:02 UTC
Short answer: yes, it is with portage.

Long answer: 
Well, I originally had the problem with the portage stuff.  I think the lib directory was /usr/lib/psemu at that time.  Then I installed the new gpupetemesagl from pete's website.  This is how I had the readme.txt, and this is when I discovered the cause/workaround for the problem.  Recently, a new epsxe ebuild was released and I have installed that, and the lib directory is changed to /usr/games/lib/psemu.  Also, the v1.0.73 of gpupetemesagl was put into portage, and I am using the one I downloaded from portage now (I know because it's in the new directory).

I have epsxe aliased to do the ENV thing, and when I alias it back to just 'epsxe'  and try to go to the video or sound menu I get the following:

Segmentation fault

When I try to run BIOS the following happens:

 * Memory handlers init.
 * ePSXe: PSX BIOS loaded [/home/picho/.epsxe/bios//scph1001.bin].
Segmentation fault

When I re-source /etc/profile everything works fine.  The line in there looks like:
alias epsxe='env LD_PRELOAD=libpthread.so.0 epsxe'
Comment 6 SpanKY gentoo-dev 2003-08-17 17:56:44 UTC
try this then since i cant reproduce the crash on my machine 
edit /usr/games/bin/epsxe 
before the 'exec ./epsxe' line, add: 
export LD_PRELOAD="libpthread.so.0:${LD_PRELOAD}" 
 
if that doesnt work, then try replacing the exec line with this: 
exec env LD_PRELOAD="libpthread.so.0:${LD_PRELOAD}" ./epsxe 
Comment 7 Joseph Nievelt 2003-08-17 18:08:41 UTC
Adding

export LD_PRELOAD="libpthread.so.0:${LD_PRELOAD}"

on its own line before exec works for me :).
Comment 8 SpanKY gentoo-dev 2003-08-17 18:16:10 UTC
ok, well since the change doesnt break my epsxe, ive added it to cvs