[SOLVED] lr-px68k not build anymore
-
Got this error at the end of installation
"Could not succesfully build lr-px68k - SHARP X68000 EMULATOR
/home/pi/RetroPie-Setup/tmp/òr-px68k/px68k_libretro.so not foundI installed from source (binary not available), RetroPie is updated to 4.4.4 version
Other info from log
/home/pi/RetroPie-Setup/tmp/build/lr-px68k/libretro.c:944: undefined reference to `round'
collect2: error: ld returned 1 exit status
Makefile.libretro:323: recipe for target 'px68k_libretro.so' failed
make: *** [px68k_libretro.so] Error 1
/home/pi
Could not successfully build lr-px68k - SHARP X68000 Emulator (/home/pi/RetroPie-Setup/tmp/build/lr-px68k/px68k_libretro.so not found).Any suggestion? Thx
-
There's not a problem with the RetroPie's recipe, the last commit in the upstream project has broken the build recipe - doesn't compile on Ubuntu either. We'll how we can fix this - thanks for reporting.
-
@mitu seems to be the same kind of problem that we had recently for the
lr-scummvm
core, where a recent Makefile update very similar to the one reported here broke the linking stage with$(LD)
. Check the PR I submitted: https://github.com/libretro/scummvm/pull/125First, I thought the
LD
variable was wrongly set to$(CC)
instead of$(CXX)
for cpp code, but then I realised that thearmv
conditional was outdated and wasn't settingLDFLAGS
correctly.Hope that gives some help.
-
@mitu Thank you for the super fast response! Hope to see it fixed soon!
-
@hhromic In this case, I think it is wrongly set to
$(CC)
and linking fails with obvious missing C++ references, since the project mixes C++/C sources. There's noarmv
platform in the Makefile.libretro and the build fails on x86 Ubuntu also, so I don't think it's related to the architecture. I'll do some more tests.EDIT: is there a log page for the libretro buildbot ?
-
@hhromic said in lr-px68k not build anymore:
@mitu seems to be the same kind of problem that we had recently for the
lr-scummvm
core, where a recent Makefile update very similar to the one reported here broke the linking stage with$(LD)
. Check the PR I submitted: https://github.com/libretro/scummvm/pull/125First, I thought the
LD
variable was wrongly set to$(CC)
instead of$(CXX)
for cpp code, but then I realised that thearmv
conditional was outdated and wasn't settingLDFLAGS
correctly.Hope that gives some help.
Yeah man, very similar :o
There's some temporary fix like lr-scummvm? I can edit .sh file but need some help on your end :D Thx so much -
@mitu in
lr-scummvm
which also mixes C/C++ the linker is set togcc
from$(CC)
and works now after properly setting-shared -fPIC
inLDFLAGS
via thearmv
conditional. You don't need that architecture conditional, but to make sure theLDFLAGS
are set correctly somewhere else. Also, note that it won't link with the-Wl,--no-undefined
linker option, so you should remove it if it's left there.@mitu said in lr-px68k not build anymore:
EDIT: is there a log page for the libretro buildbot ?
I also was wondering the same thing but was confirmed to me that it's not public. You can get access to it in the Libretro Discord dev channel.
-
@DarishZone said in lr-px68k not build anymore:
Yeah man, very similar :o
There's some temporary fix like lr-scummvm? I can edit .sh file but need some help on your end :D Thx so muchIt is fixed already upstream and in RetroPie :) Just update your RetroPie-Setup script and re-compile
lr-scummvm
. You also will get a newly added option to adjust the mouse speed when using a real mouse. -
@hhromic said in lr-px68k not build anymore:
@DarishZone said in lr-px68k not build anymore:
Yeah man, very similar :o
There's some temporary fix like lr-scummvm? I can edit .sh file but need some help on your end :D Thx so muchIt is fixed already upstream and in RetroPie :) Just update your RetroPie-Setup script and re-compile
lr-scummvm
. You also will get a newly added option to adjust the mouse speed when using a real mouse.I explained me bad, i've already fixed lr-scummvm, just asking if there's similar method for lr-px68k, but i guess is a no at moment :p
-
@DarishZone You'll have to have more patience until it gets fixed.
-
@mitu said in lr-px68k not build anymore:
@DarishZone You'll have to have more patience.
Fair enough :D most important thing is that the issue is aknowledged
-
@DarishZone ah I see. For the moment better is to wait for mitu to find out exactly how to patch the Makefile. Then it probably will be sent as PR upstream.
What you can do in the meantime is to force compilation iwth the previous commit, before it broke. For this, edit the scriptmodule and change the relevant line to this:
gitPullOrClone "$md_build" https://github.com/libretro/px68k-libretro.git master c36fafd35094df918f037bea333d7707e656128a
Don't forget to revert this temporary fix when all is fixed upstream.
Edit Sorry I made a mistake (put master after the hash). Corrected now.
-
Ive made edit and now Retropie Setup give me an error
Edit: Saw later the fix! Will try new line
-
@hhromic said in lr-px68k not build anymore:
@DarishZone ah I see. For the moment better is to wait for mitu to find out exactly how to patch the Makefile. Then it probably will be sent as PR upstream.
What you can do in the meantime is to force compilation iwth the previous commit, before it broke. For this, edit the scriptmodule and change the relevant line to this:
gitPullOrClone "$md_build" https://github.com/libretro/px68k-libretro.git master c36fafd35094df918f037bea333d7707e656128a
Don't forget to revert this temporary fix when all is fixed upstream.
Edit Sorry I made a mistake (put master after the hash). Corrected now.
IT WORKS! You're frigging brilliant man, thank you so much :)))
-
@hhromic said in lr-px68k not build anymore:
I also was wondering the same thing but was confirmed to me that it's not public. You can get access to it in the Libretro Discord dev channel.
https://travis-ci.org/libretro/px68k-libretro - it looks like it's failing proper. Either removing the
-Wl,--no-undefined
or compiling with$(CXX)
works. -
@DarishZone I'm glad you got it working for now.
Don't forget to revert this change when @mitu reports back a proper solution later, and before updating RetroPie-Setup again. -
@hhromic said in lr-px68k not build anymore:
@DarishZone I'm glad you got it working for now.
Don't forget to revert this change when @mitu reports back a proper solution later, and before updating RetroPie-Setup again.Thanks man, i already reverted change now, will that make a difference? Im afraid to forget if i do later
-
@mitu said in lr-px68k not build anymore:
@hhromic said in lr-px68k not build anymore:
I also was wondering the same thing but was confirmed to me that it's not public. You can get access to it in the Libretro Discord dev channel.
https://travis-ci.org/libretro/px68k-libretro - it looks like it's failing proper. Either removing the
-Wl,--no-undefined
or compiling with$(CXX)
works.ah good to know how to access their CI! In here a dev told me I needed Discord access. Thanks for the tip.
Regarding the candidate fixes, I chose to remove
-Wl,--no-undefined
(I was setting it in the scriptmodule) together with properly settingLDFLAGS
and not rely on re-settingLD
. They have been pushing these updates recently to many cores, i.e. standardising to setLD = $(CC)
so there are high chances it can get reverted again. So that would be my advice.Their makefile management is def not ideal ...
-
@DarishZone said in lr-px68k not build anymore:
@hhromic said in lr-px68k not build anymore:
@DarishZone I'm glad you got it working for now.
Don't forget to revert this change when @mitu reports back a proper solution later, and before updating RetroPie-Setup again.Thanks man, i already reverted change now, will that make a difference? Im afraid to forget if i do later
The only potential problem if you don't revert it will be when you later update the RetroPie-Setup script. You could get local change conflicts and you will have to resolve them manually, kind of nasty.
However after the fix is done, you don't really need to recompile the core again as the change doesn't touch the source code. So just revert it now and don't compile the core again until the fix is confirmed upstream.
-
@hhromic said in lr-px68k not build anymore:
@DarishZone said in lr-px68k not build anymore:
@hhromic said in lr-px68k not build anymore:
@DarishZone I'm glad you got it working for now.
Don't forget to revert this change when @mitu reports back a proper solution later, and before updating RetroPie-Setup again.Thanks man, i already reverted change now, will that make a difference? Im afraid to forget if i do later
The only potential problem if you don't revert it will be when you later update the RetroPie-Setup script. You could get local change conflicts and you will have to resolve them manually, kind of nasty.
However after the fix is done, you don't really need to recompile the core again as the change doesn't touch the source code. So just revert it now and don't compile the core again until the fix is confirmed upstream.
Perfect, thanks man!
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.