PPSSPP fails to build from source on x86_64 system
-
Hi,
It appears PPSSPP is failing to build from source. I have tried a few times now and cleared the source folder each time, but to no avail. It stops around 6-7 minutes in every time. I am running the latest RetroPie-Setup script and the OS is a fresh install.
I am using Linux Mint 18.3 x64, but as this is based on 16.04.3 I would have thought it should still compile ok?
Here are my full logs from the latest attempt last night:
https://paste.ubuntu.com/26284244/And the last few lines:
[ 27%] Building CXX object ext/armips/CMakeFiles/armips.dir/Util/Util.cpp.o
/home/movisman/RetroPie-Setup/tmp/build/ppsspp/ppsspp/ext/armips/Util/Util.cpp: In function ‘void changeDirectory(const wstring&)’:
/home/movisman/RetroPie-Setup/tmp/build/ppsspp/ppsspp/ext/armips/Util/Util.cpp:286:21: warning: ignoring return value of ‘int chdir(const char*)’, declared with attribute warn_unused_result [-Wunused-result]
chdir(utf8.c_str());
^
At global scope:
cc1plus: warning: unrecognized command line option ‘-Wno-deprecated-register’
[ 27%] Linking CXX static library ../../lib/libarmips.a
[ 27%] Built target armips
Makefile:127: recipe for target 'all' failed
make: *** [all] Error 2
~
Could not successfully build ppsspp - PlayStation Portable emulator PPSSPP (/home/movisman/RetroPie-Setup/tmp/build/ppsspp/ppsspp/PPSSPPSDL not found).
I can install lr-ppsspp with no problem, but would like to try the standard one and see which works best.
I searched the forum already and found various topics on the issue, some of the issues were solved and it looks like a couple were because changes were made which broke the install (but then subsequently fixed). I wonder if something similar has happened here.
Can anyone help?
Cheers
-
@movisman This is an upstream issue, from what I've seen in the forums (and also on reddit), PPSSPP is undergoing a lot of changes and the master branch is quite experimental. Unfortunately for your case, there is no binary installation option, so you can try an find an older version already compiled - see http://www.noobslab.com/2017/01/ppsspp-psp-emulator-130-version.html for a PPA repo with a stable version.
-
Hi there,
Thanks a lot for the info, I appreciate it.
Do you know what would be the best way to integrate the install into retropie after installing the binaries separately? Basically the usual stuff which is at the end of the PPSSPP.sh script where directories are created, configs are moved, and system entries are put in etc.
Am I best off making a copy of that script, removing the build portion of the file and running it to do the other bits post-install?
Cheers
-
The easiest way would be to edit scriptmodules/emulators/ppsspp.sh and add a release tag to the git repo. For example, to checkout the v1.5.3 tag:
gitPullOrClone "$md_build/ppsspp" https://github.com/hrydgard/ppsspp.git v1.5.3
Note that I can't guarantee which tagged build will compile correctly, so you'll need to decide which tag to try: https://github.com/hrydgard/ppsspp/releases
Try building from source again (making sure to clear the existing source folder beforehand). Don't forget to restore
ppsspp.sh
to defaults when you're finished so that it won't break future script updates:$ cd RetroPie-Setup $ git checkout scriptmodules/emulators/ppsspp.sh
-
@movisman
Please post full logs when reporting issues - via pastebin.com or similar . the errors are further up in the output.Sorry - I missed the link before the snippet - will check your full log.From my test just now it looks related to SDL/wayland code.
I have rolled back to the last working version.
-
The 1.5.4 release may have stability issues on Raspberry Pi due to this commit: https://github.com/hrydgard/ppsspp/commit/4b59fe6daca86c3efb1abdfa527099850b33751c
It causes a build failure on stretch, but for the current RetroPie images it may cause instability on jessie due to libEGL and libbrcmEGL being mixed together. It was fixed by https://github.com/hrydgard/ppsspp/commit/20080ba1236c8bff21b74d47235fd7a302af49fd
-
@psyke83 thanks. The last RPI bin should be fine though. However feel free to fix this :-)
-
It is fixed :). The problem is we can't control the frequency or timing by which upstream tags releases, so having better version control would be helpful... pokes
The latest problem with master is this: https://github.com/hrydgard/ppsspp/issues/10458
Still working on isolating when the problem was introduced, as there have been a lot of failed builds for Pi in that commit range.
-
@psyke83 I meant to fix the problem you mentioned for v1.5.4 on retropie (eg with a patch) (since we can't use master for other reasons).
If you think v1.5.4 will be problematic with the mixed lib names (or we can wait and see if people report issues).
-
-
Hi,
PPSSPP has been working really well on my x86 machine, but I was wondering, are you able to revert this change yet so it grabs the latest build:
https://github.com/RetroPie/RetroPie-Setup/commit/4852d12c8a9b8cc75e110dc450ea8aef1e6c57a1As I wouldn't mind trying out the Vulkan driver, which I cannot seem to select at the mo. I think that might be due to the version it downloads using the setup script. Otherwise, I can always download it separately to check it out.
Cheers
-
@movisman as I mentioned on github, there are issues with master currently and I may well stick to release tags.
-
Yep completely understood, and that makes sense for the sake of keeping the releases as stable as possible. If I have time to test the Vulkan driver out I can always try to build from the master myself if there hasn't been a new release when I get round to it.
Thanks for the help as always.
Cheers
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.