LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Software (https://www.linuxquestions.org/questions/linux-software-2/)
-   -   Fatal signal: Segmentation Fault (SDL Parachute Deployed), but not as root (https://www.linuxquestions.org/questions/linux-software-2/fatal-signal-segmentation-fault-sdl-parachute-deployed-but-not-as-root-332999/)

patrickdepingui 06-13-2005 05:07 AM

Fatal signal: Segmentation Fault (SDL Parachute Deployed), but not as root
 
I'm trying to run a Windows screensaver on Linux using Wine. The screensaver uses SDL.
I copied the necessary files to a directory, and opened the exe in Wine.

As root everything works, and I see the screensaver.
As a regular user, it does not. I get:
Fatal signal: Segmentation Fault (SDL Parachute Deployed)

I've used chown to change ownerschip to the user and a "screensaver" group, but that doesn't help.

Where should I look?

Simon Bridge 06-13-2005 06:43 AM

Look at the permissions on all the files needed by the screensaver. (ls -l)

Just because the group et al is right don't mean the group et al have the right permissions.
I expect you'll want rwxr-xr-x (just match what the other screensavers say).

patrickdepingui 06-13-2005 06:51 AM

I changed permissions to 755, and even 777 but the same problem exists: root can run it, and a user can't.

ls -l gives:

Quote:

drwxr-xr-x 6 thomas screensaver 352 2005-06-13 11:36 Antarctica/
-rwxr-xr-x 1 thomas screensaver 266240 2005-06-13 11:36 Antarctica.scr*
-rwxr-xr-x 1 thomas screensaver 274432 2005-06-13 11:36 Antarctica_App.exe*
-rwxr-xr-x 1 thomas screensaver 225280 2005-06-13 11:41 SDL.dll*
-rwxr-xr-x 1 thomas screensaver 262144 2005-06-13 11:41 SDL_mixer.dll*

Simon Bridge 06-14-2005 03:02 AM

biik ... hunch tho: possible that the screensaver settings are cached somewhere and you'll have to reboot for the new permissions to take effect (was this tried). If this works, then there is probably some sort of config utility.

The way it runs says that it is a permissions problem. Is it possible that the screensaver calls something elsewhere?

I just had a thought - if these files are just copied over - maybe the screensaver is calling it's support files from the windows partition still? ... maybe not likely but it would be in keeping with win paradigms to have the program look in a particular named directory on the windows c drive if it expects only to be run in a windows environment. This could be checked - what are the permissions for the win partition? If only root has execute access - try giving everyone execute, just for a while. (or rename the files in windows)

patrickdepingui 06-14-2005 03:15 PM

Hi,a reboot did not fix the problem.
I don't think the screensaver can access window files anymore, since it doesn't now the location to the "C:" drive, since linux mounts this on /win/C.
I already copied the necessary DLLs, without them it gave an error.

I still have the problem though...

thanks for your time already.

patrickdepingui 06-17-2005 12:13 PM

I installed another program, frozen-bubble, and that works without a problem and uses SDL. So I don't think it's an SDL problem.

Maybe if I post the files, someone can test it out to see if it works for him/her?

Simon Bridge 06-19-2005 05:02 AM

Different screensavers will act differently - windows right - some will want their dlls et al in the same directory, others will look in a specific (named) directory - assuming it's there. (This is poor programming BTW. But it happens.)

You have a point about not knowing where the c: drive is - if it wants a named directory, it's code will look for c:\fu\bar or whatever ... technically, you could write a wrapper to trap that sort of thing :) However: your problem is not that a file cannot be found (which is what you'd get if it was trying to look for a non-existant directory) but that only root can access something vital needed to run the screensaver.

It comes down to how badly you want to have this particular screensaver.

Have you tried altering the permissions for your win mountpoint?
Wine should be able to come with this - like aliasing c:\ to something useful in linux.

patrickdepingui 06-19-2005 05:24 AM

Thanks! It seems indeed that wine has its own windows-directories in ~/.wine/drive_c/windows

In Windows, the screensaver files were all in the C:\Windows\ directory, so I tried placing the files in the wine equivalent. This did indeed seem to solve the problem.

I did need to cd first to the right directory, so I wrote a little script to do this
#!/bin/bash
cd ~/.wine/drive_c/windows
wine Antarctica_App.exe

(I'm writing this if others are having the same problem...)
Don't forget to chmod +x this script...



What I don't understand however, is why root was able to run it, and a regular user couldn't. Probably permissions indeed, but I think the win dir has the right permissions:
-r-xr-xr-x 2 root root 266240 2004-07-05 11:31 Antarctica.scr*
-r-xr-xr-x 2 root root 274432 2004-07-05 11:26 Antarctica_App.exe*
-r-xr-xr-x 1 root root 225280 2002-10-07 09:49 SDL.dll*
-r-xr-xr-x 2 root root 262144 2003-03-09 12:53 SDL_mixer.dll*

And the same for the other files.
Shouldn't that be enough?

Simon Bridge 06-19-2005 05:47 AM

So what are the wine directory permissions then?
(.wine, .wine/win_c and .wine/win_c/windows)

patrickdepingui 06-19-2005 06:14 AM

these are in the home directory, and so r/w for the user


All times are GMT -5. The time now is 11:07 PM.