Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Segfault due to missing resources after PR #367 #595

Open
LiSongMWO opened this issue Aug 25, 2019 · 7 comments
Open

Segfault due to missing resources after PR #367 #595

LiSongMWO opened this issue Aug 25, 2019 · 7 comments

Comments

@LiSongMWO
Copy link

LiSongMWO commented Aug 25, 2019

Fresh install of ES from source (stable branch, commit 72b8644) segfaults immediately.

I did a git bisect between tag: v2.7.6 as good and stable (commit 72b8644) as bad.

The bisect resulted in the culprit commit: 1a4d13b which was the push for PR #367.

After make install I see no resources folder in /usr/local/bin where my emulationstation binary is, I see no resources folder created in ~/.emulationstation/ after attempting to launch.

Manually copying the data/resources directory from the source tree to .emulationstation/resources fixes the segfault.

As an addendum on the discussion in the PR: I believe that /usr/local/share/emulationstation/resources should be the correct location of any resources when building from source (for the same reason that /usr/local/bin is the default install target for the binary). It's up to the package maintainer to set the install prefix to /usr/ instead of /usr/local/ for distribution packages. However the install prefix should be passed to configure.h or equivalent to provide the lookup path of the resource files to the binary so that they are correctly found depending on how the installation prefix is configured in cmak. Having ~/.emulationstation/resources/ as an override makes sense, but storing the resources alongside the binary in /usr/bin/ or /usr/local/bin is against unix practices. Equally they should not be stored in /etc/emulationstation as was discussed in the PR as /etc/ is reserved for configuration, not graphical resources. Looking up the resources on the current working directory is also a bit confusing, I would rather pass a flag.

@jrassa
Copy link
Collaborator

jrassa commented Aug 25, 2019

This has been discussed before (#427 and others). The gist of it is that RetroPie does not use make install so it hasn't been a priority to make it work when doing so. We are open to accepting PRs.

@LiSongMWO
Copy link
Author

LiSongMWO commented Aug 26, 2019 via email

@GvMariani
Copy link

Given that the issue at hand is preventing the packaging of EmulationStation in my distribution, I come up with this little patch to teach it how to look in /usr/share/emulationstation on Linux (build and run tested):
emulationstation-2.9.4-use-datadir-for-resources.txt

It would be better if the place where to search for the resources was configurable at build time or by passing a command line option at runtime, IMO...

@Ronbinn
Copy link

Ronbinn commented Jan 11, 2021

Given that the issue at hand is preventing the packaging of EmulationStation in my distribution, I come up with this little patch to teach it how to look in /usr/share/emulationstation on Linux (build and run tested):
emulationstation-2.9.4-use-datadir-for-resources.txt

It would be better if the place where to search for the resources was configurable at build time or by passing a command line option at runtime, IMO...

Thanks to your patch I was able to create a deb package. Great job!

@ViperAcidZX
Copy link

I'm having some segfault problems with the recent versions of EmulationStation that is constantly causing it to crash with pretty much any theme that isn't "carbon". Can somebody please fix this?

@pjft
Copy link
Collaborator

pjft commented Dec 21, 2021

@ViperAcidZX need a lot more details than that, apologies.

Can you please report it in the forums and provide the required details - OS version, hardware, RetroPie version, ES version, ES log, etc?

@ViperAcidZX
Copy link

@ViperAcidZX need a lot more details than that, apologies.

Can you please report it in the forums and provide the required details - OS version, hardware, RetroPie version, ES version, ES log, etc?

Sent.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants