Thanks @hotchalupa. I tried loading a core, but it couldn’t find any. I then tried to load content–but it wouldn’t let me, because I didn’t have any cores. So it’s definitely not loading them.
As I mentioned in my previous post, I did some further research and found that the core_updater_buildbot_cores_url was set to “”. I fixed that, but apparently I’m pulling cores from the wrong place, because it let me download the cores, but they always fail when I try to launch them.
Is there a better source for cores than buildbot.libretro.com > nightly > linux > armv7-neon-hf > latest?
I have spent some time on this myself, this is how I made it work:
Add libretro repo and install retroarch as stated on official site ( follow Ubuntu part ): RetroArch
Run also: apt install retroarch-* libretro-*
This will install additional retroarch resource files and most importantly get the right kind of libretro cores matching thr platform
Now the magic; run: dpkg -L libretro-CORENAME
Which tells you the path where cores are installed. You can just browse that in Retroarch and you are good to go. Replace CORENAME with an actual corename you installed, like libretro-mgba.
Oh, man, I spent all weekend going through this. I was able to finally wire up the correct paths/URLs to allow the built in core downloader to work, however the next issue I ran into is that the Retroarch buildbot doesn’t seem to build arm64 versions of their cores. So, when using either the armhf or armv7-neon-hf, Retroarch would spit out a ELFCLASS32 error.
Anyway, recapping what you’ve called out:
Use the Ubuntu PPA which does bundle arm64 cores
Update the retroarch.cfg file to point to the correct info directory and core directory:
Did you find a core that’s working better? After compiling the modules from the Libretro Super repo, I found that VBA Next seems to perform pretty well. I did compile it, so maybe it being compiled for Arm64 makes a big difference.
I definitely had luck cloning the Libretro super repo and compiling. I did “make” and then “make install”.
The “make” took at least 12 hours or so to complete, and required 10+ GB of space on my SD card. I had to flash a new SD card I had to make it work. And a bunch of modules didn’t compile, but all the ones I care about did! I had lots of trouble making any of the cores work before doing this.
As of this writing I was able to make the following work after compiling:
VBA Next (Gameboy Advance)
I am making some good progress as well. Being that you have the Libretro super repo you now have all of the 64 bit cores that run on aarch-64 that you can individually make. I also added multi-arch to my system so I can run 32 bit armfh, however, am sticking with 64 bit cores for now. This is my progress thus far:
Anything with yellow highlights means I got it to compile but not run properly. Orange means I could not complete the Make process.
Your results are all for A06? (I’m on A04 and strongly considering getting the A06 core.)
When you say “Works” in your results, does that mean runs, but possible with issues? Or runs smoothly (playable)? I’m finding that I can’t solve the choppy audio on the A04, although I know it’s possible, since games running under box64, and even box86, work smoothly, including the audio.
Yes, i can confirm that al the results are for A06. With respect to choppy audio in Retroarch, check the frame rate video / settings / output. This should run at 59.4 or so. If you are running much less than that the audio is gonig to chop. I found that the frame rate would run significantly lower if you install SDL2-dev. I do have SDL2 installed and it works fine, however, without the -DEV. Now as I did need SDL2-DEV to compile JZINTV and Mupenplus64, I did this on a seperate SD card with SDL2-DEV installed and then moved the compiled binary to my other card with just SDL2 and it worked, tears of joy were shed. I doubt that its A04 versus A06 causing issues.
RetroArch failed to opened period on the A04 for me. I think it may be related to the fbcon Kernel issues I previously reported, which I discovered through the failure to properly open Firefox and other web browsers.
I did have the problem mentioned above with the build filling up the entire 32 GB SD card (the libretro-super directory ballooned out to 27 GB at one point). I offloaded as much stuff as I could while the build was running (it took hours), but it still filled up the card. All core builds failed after that. So I did it in two passes: First build as much as I could, install those. Second, clean out the repo subdirectories for the successful cores, and then build the rest.
I’m curious, when building libretro-super, did you need to increase your swap file size? I got well into the build and then at some point (in the full mame build, I think?) the build got unbearably slow, the system became unresponsive, and when I checked it had blown through the 4GB of RAM and the 2GB of default swap. I’ve since rebooted and will try again, but I’m wondering what the environment of successful builds looked like. (One thing I know for sure – it’s not my sd card running out of space, as I’ve got a 400GB card in the thing.)
Also, which CPU settings/gear were you using? (I’m on an A06.) I went with CPUs #4 and #5 at 1Ghz, but wondering if having #1-4 on instead would have been better.
A lot of the libretro cores actually got built, but I’d like to be able to build them all so I have a full set to try. Thanks