Odroid XU4 SDL Problem Emulationstation
-
@mitu Not able to install the 22.04 version either. Depends on Python3.10 or below, but Python3.12 is installed.
At this point, I think I'm going to wipe the SD card and try again with 22.04 .
-
Currently compiling the system for xu4 under Ubuntu 22.04 Operating System. No problems yet. (Need to go knock some wood now...)
-
Well, about 1.5 hours later, compilation finished. No errors reported during compile process that I could see, however, emulationstation crashes when run.
I tried with --debug flag, however the screen is cleared by the crash dialog that comes up, so I can't read. I'll try tee'ing it to a text file.
-
@aaronouthier I watched a bit closer. Nothing out of the ordinary displayed when running with --debug flag. Just shows loading some xml files.
On a related note, however, Xserver does NOT seem to be running. I am attaching a tar.gz file with all of the build logs, a log of installed packages, and a log of running processes.
Hmm. Can't seem to upload it directly.
Link to files on my Google drive: https://drive.google.com/file/d/1ro_ZYzHFcI6TfbSUjzsLksvwf6rc9vMy/view?usp=sharing -
@aaronouthier said in Odroid XU4 SDL Problem Emulationstation:
I tried with --debug flag, however the screen is cleared by the crash dialog that comes up, so I can't read. I'll try tee'ing it to a text file.
That would have been useful to look, the other logs not so much. You can find the same log file in
$HOME/.emulationstation/es_log.txt
, there's no need totee
it.
Does detection works better on 22.04 - is the SBC detected asodroid-xu
? -
I checked those logs. 3 lines about mame-related .xml files.
No, still detects as "Armv7l". I used your workaround when I ran RetroPie-Setup.
I mentioned twice now that XWindows doesn't seem to be running. Very few X-related packages installed as well. This might be normal, but I don't have a frame of reference here. This was the case in 24.04 also.
-
@aaronouthier said in Odroid XU4 SDL Problem Emulationstation:
I checked those logs. 3 lines about mame-related .xml files.
Even when running with
--debug
? There should be more information printed when debug is enabled.No, still detects as "Armv7l". I used your workaround when I ran RetroPie-Setup.
I added some detection here, but it may not be enough (?) or you're using an earlier commit.
I mentioned twice now that XWindows doesn't seem to be running.
I think that's ok.
-
Even when running with
--debug
? There should be more information printed when debug is enabled.There might have been another line or two. I'm not in front of the system right now. Yes, with --debug. My point was that no errors were displayed.
I added some detection here, but it may not be enough (?) or you're using an earlier commit.
Probably hadn't pulled the latest commit then. This was 2 days ago.
I created an image file from the SD card, then tried to install Lakka just to test that out. That one doesn't boot at all, but hey, I tried. I haven't taken the time to restore the RetroPie Disk image just yet.
-
@aaronouthier
Re-wrote the disk-image. Originally, when I cat'd the file mentioned, it showed the exact same contents listed in post 19 in this thread.I then checked for package updates. After updating them, I again ran 'emulationstation --debug'. There was no output, but it still crashed. The es_log.txt is now empty.
I'm now recompiling everything. Also, your new commit to retropie_setup.sh still shows arm7l, with no mention of Odroid XU or XU4, unless I run your workaround.
-
So I did some more digging. Realized that /usr/bin/emulationstation is a shell script. Found the actual executable, and ran it:
Feb 26 19:43:02 lvl2: EmulationStation - v2.11.2rp, built Feb 20 2025 - 11:49:42 Feb 26 19:43:02 lvl2: Parsing XML file "/opt/retropie/supplementary/emulationstation/resources/mamenames.xml"... Feb 26 19:43:03 lvl2: Parsing XML file "/opt/retropie/supplementary/emulationstation/resources/mamebioses.xml"... Feb 26 19:43:03 lvl2: Parsing XML file "/opt/retropie/supplementary/emulationstation/resources/mamedevices.xml"... Feb 26 19:43:03 lvl2: Creating window... Segmentation fault (core dumped)
Where are core dumps stored? I'm willing to send it to you for investigation.
-
@aaronouthier said in Odroid XU4 SDL Problem Emulationstation:
Where are core dumps stored? I'm willing to send it to you for investigation.
Check the folder where you ran the command (
$HOME
?) for acore
file or verify incat /proc/sys/kernel/core_pattern
what should be the core file name. -
@mitu
It's amazing what a Google search can turn up, isn't it?
It was in /var/crashes/I have removed dep and core packages, and am compiling again.. Strangely, that was finding some missing packages while building deps.
I am just noticing the following when compiling emulationstation:
= = = = = = = = = = = = = = = = = = = = = Building 'emulationstation' : EmulationStation - Frontend used by RetroPie for launching emulators = = = = = = = = = = = = = = = = = = = = = Removing additional swap CMake Deprecation Warning at CMakeLists.txt:1 (cmake_minimum_required): Compatibility with CMake < 2.8.12 will be removed from a future version of CMake. Update the VERSION argument <min> value or use a ...<max> suffix to tell CMake that the project does not need compatibility with older versions. CMake Deprecation Warning at CMakeLists.txt:20 (cmake_policy): The OLD behavior for policy CMP0072 will be removed from a future version of CMake. The cmake-policies(7) manual explains that the OLD behaviors of all policies are deprecated and that a policy should be set to OLD only under specific short-term circumstances. Projects should be ported to the NEW behavior and not rely on setting a policy to OLD.
Probably of no consequence, but thought I'd mention it. Compilation is proceeding despite this.
I'll be back shortly.
-
-
@aaronouthier That's more than a crash dump - can you upload just the core file ? You can also analyze it by loading it into
gdb
and runningbacktrace
to see where it crashes. -
@mitu That was the only file I found. There are no files in current directory, only 2 folders. EmulationStation was run from the folder in question (my home folder).
The full path and filename was originally:
/var/crash/_opt_retropie_supplementary_emulationstation_emulationstation.1000.crashI shortened it.
I believe you are looking for the base64 encoded part at the bottom of the file? I will see what I can find out.
-
@mitu said in Odroid XU4 SDL Problem Emulationstation:
verify in cat /proc/sys/kernel/core_pattern what should be the core file name
That command outputs
|/usr/share/apport/apport -p%p -s%s -c%c -d%d -P%P -u%u -g%g -- %E
gdb run with --core arg pointing to correct core dump file:
Reading symbols from /opt/retropie/supplementary/emulationstation/emulationstation... (No debugging symbols found in /opt/retropie/supplementary/emulationstation/emulationstation) warning: core file may not match specified executable file. [New LWP 1114] [New LWP 1115] [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/arm-linux-gnueabihf/libthread_db.so.1". Core was generated by `/opt/retropie/supplementary/emulationstation/emulationstation'. Program terminated with signal SIGSEGV, Segmentation fault. #0 __libc_do_syscall () at ../sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:47 47 ../sysdeps/unix/sysv/linux/arm/libc-do-syscall.S: No such file or directory. [Current thread is 1 (Thread 0xb6cea020 (LWP 1114))] (gdb) backtrace #0 __libc_do_syscall () at ../sysdeps/unix/sysv/linux/arm/libc-do-syscall.S:47 #1 0xb544d292 in __pthread_kill_implementation (threadid=3066994720, signo=11, no_tid=<optimized out>) at pthread_kill.c:43 #2 0xb541c840 in __GI_raise (sig=11) at ../sysdeps/posix/raise.c:26 #3 0xb6e21be4 in ?? () from /lib/arm-linux-gnueabihf/libSDL2-2.0.so.0 Backtrace stopped: previous frame identical to this frame (corrupt stack?)
-
Is there a way to communicate privately?
I am inclined to let you in via ssh access if you think it would help and you have the time. Might be a bit more efficient than "playing telephone" - telling me what to type and then posting the output. -
@aaronouthier That's not going to happen, I'm not providing 'private' support. I also don't own an Odroid SBC so if the issue is something that's specific to it I won't be able to test any solutions.
-
@aaronouthier said in Odroid XU4 SDL Problem Emulationstation:
gdb run with --core arg pointing to correct core dump file:
Hm, unfortunately the there's no further indication of why it SDL2 crashes - what part of the ES code was calling SDL and what call was made.
My advice right now would be to use the 'native' SDL version of the OS and try compiling EmulationStation with it. Modify
/opt/retropie/configs/all/retropie.cfg
and make sure it has a line withown_sdl2 = "0"
.Re-install the
libsdl2-dev
andlibsdl2-2.0-0
packages with their version from the Ubuntu repositories and then re-compile EmulationStation. Make sure your user is in theinput
,video
andrender
groups and try to start EmulationStation. If that doesn't work, then use a minimal desktop environment to run the front-end. -
@mitu said in Odroid XU4 SDL Problem Emulationstation:
Re-install the libsdl2-dev and libsdl2-2.0-0 packages with their version from the Ubuntu repositories and then re-compile EmulationStation. Make sure your user is in the input, video and render groups and try to start EmulationStation. If that doesn't work, then use a minimal desktop environment to run the front-end.
User is only in the input and video groups. No render listed with the groups command.
Just added that group and restarted the system. ES still crashes. I will troubleshoot again in the morning. G'night.
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.