lr-hatari build breaks when applying .../lr-hatari/01_libcapsimage.diff + lr-vecx on x86
-
Just noticed that lr-hatari build breaks while trying to apply patch
/home/pi/RetroPie-Setup/scriptmodules/libretrocores/lr-hatari/01_libcapsimage.diff
. Log below. It looks like it's caused by libretro/hatari commits on Oct 9th, 2020 that changed Makefile.libretro.Tested that it breaks on both pi and x86-64 / Ubuntu 20.04. Let me know if you want me to provide full 'read-this-first' details.
pi@retropie ~ $ sudo /home/pi/RetroPie-Setup/retropie_packages.sh lr-hatari = = = = = = = = = = = = = = = = = = = = = Installing dependencies for 'lr-hatari' : Atari emulator - Hatari port for libretro = = = = = = = = = = = = = = = = = = = = = /home/pi/RetroPie-Setup/tmp/build/lr-hatari /home/pi = = = = = = = = = = = = = = = = = = = = = Getting sources for 'lr-hatari' : Atari emulator - Hatari port for libretro = = = = = = = = = = = = = = = = = = = = = git clone --recursive --depth 1 --branch master "https://github.com/libretro/hatari.git" "/home/pi/RetroPie-Setup/tmp/build/lr-hatari" Cloning into '/home/pi/RetroPie-Setup/tmp/build/lr-hatari'... remote: Enumerating objects: 745, done. remote: Counting objects: 100% (745/745), done. remote: Compressing objects: 100% (631/631), done. remote: Total 745 (delta 128), reused 463 (delta 91), pack-reused 0 Receiving objects: 100% (745/745), 2.56 MiB | 1.32 MiB/s, done. Resolving deltas: 100% (128/128), done. HEAD is now in branch 'master' at commit '05c7f4e9f399c2c74f51a88844a46141ef8b607c' patching file Makefile.libretro Hunk #1 FAILED at 212 (different line endings). 1 out of 1 hunk FAILED -- saving rejects to file Makefile.libretro.rej patching file src/floppy_ipf.c Archive: /tmp/tmp.hMvkiWPr1D/spsdeclib_5.1_source.zip inflating: /home/pi/RetroPie-Setup/tmp/build/lr-hatari/capsimg_source_linux_macosx.zip ..... ..... creating: capsimg_source_linux_macosx/x64/Release/ inflating: capsimg_source_linux_macosx/SPStudio_Dev.sln /home/pi lr-hatari patch /home/pi/RetroPie-Setup/scriptmodules/libretrocores/lr-hatari/01_libcapsimage.diff failed to apply Errors: lr-hatari patch /home/pi/RetroPie-Setup/scriptmodules/libretrocores/lr-hatari/01_libcapsimage.diff failed to apply pi@retropie ~ $
edit: updated subject
-
Yes, it seems a recent change in the
Makefile
broke the RetroPie patch. Should be easily fixable - thanks for reporting it. -
It should be fixed now, needs an update to Retropie-Setup first to get the correct
.diff
. -
@mitu Thanks! That was really fast! Alas, looks like RetroArch also updated lr-vecx and broke it in a 'funny' kind of way that breaks RetroPie basic install on x86 / linux (and propably on all non-pi platforms come to think of it). See log below.
Problem is this line in lr-vecx Makefile.libretro (or something similar elsewhere). E.g. it ends up matching pi from 'retropie' in Ubuntu 20.04
uname -a
output and thus tries to link x86-64 with pi specific libs (and fails when linker tries to -lbrcmGLESv2,..):pi@retropie ~ $ uname -a Linux retropie 5.4.0-48-generic #52-Ubuntu SMP Thu Sep 10 10:58:49 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
Quick workaround on Ubuntu is:
pi@retropie ~ $ sudo hostnamectl set-hostname retronuc pi@retropie ~ $ uname -a Linux retronuc 5.4.0-48-generic #52-Ubuntu SMP Thu Sep 10 10:58:49 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
After which lr-vecx compiles ok. But if my prognosis was correct, it might be better to have libretro update their makefile.
I'm sorry if I should have created another thread for this.
Partial failing build log below.
pi@retropie ~ $ sudo /home/pi/RetroPie-Setup/retropie_packages.sh lr-vecx /home/pi/RetroPie-Setup/tmp/build/lr-vecx /home/pi = = = = = = = = = = = = = = = = = = = = = Getting sources for 'lr-vecx' : Vectrex emulator - vecx port for libretro = = = = = = = = = = = = = = = = = = = = = git clone --recursive --depth 1 --branch master "https://github.com/libretro/libretro-vecx.git" "/home/pi/RetroPie-Setup/tmp/build/lr-vecx" Cloning into '/home/pi/RetroPie-Setup/tmp/build/lr-vecx'... HEAD is now in branch 'master' at commit 'd79460d225237ae83a669a7be778400ddb2525b9' /home/pi /home/pi/RetroPie-Setup/tmp/build/lr-vecx /home/pi = = = = = = = = = = = = = = = = = = = = = Building 'lr-vecx' : Vectrex emulator - vecx port for libretro = = = = = = = = = = = = = = = = = = = = = rm -f vecx_libretro.so ./e6809.o ./e8910.o ./libretro.o ./vecx.o ./libretro-common/glsym/rglgen.o ./libretro-common/glsym/glsym_es2.o cc -march=native -O2 -DGIT_VERSION=\"" d79460d"\" -I/opt/vc/include -I/opt/vc/include/interface/vcos/pthreads -I/opt/vc/include/vmcs_host/linux -O2 -DNDEBUG -DHAVE_OPENGLES -DHAVE_OPENGLES2 -D__LIBRETRO__ -DHAVE_STRINGS_H -DHAVE_STDINT_H -DHAVE_INTTYPES_H -DINLINE=inline -DHAS_GPU -DHAVE_OPENGLES2 -fomit-frame-pointer -Wall -W -Wno-unused-parameter -Wno-sign-compare -Wno-uninitialized -fPIC -DFRONTEND_SUPPORTS_RGB565 -I. -I./libretro-com mon/include -I./libretro-common/include -c -oe6809.o e6809.c ............. ............. cc -march=native -O2 -DGIT_VERSION=\"" d79460d"\" -I/opt/vc/include -I/opt/vc/include/interface/vcos/pthreads -I/opt/vc/include/vmcs_host/linux -O2 -DNDEBUG -DHAVE_OPENGLES -DHAVE_OPENGLES2 -D__LIBRETRO__ -DHAVE_STRINGS_H -DHAVE_STDINT_H -DHAVE_INTTYPES_H -DINLINE=inline -DHAS_GPU -DHAVE_OPENGLES2 -fomit-frame-pointer -Wall -W -Wno-unused-parameter -Wno-sign-compare -Wno-uninitialized -fPIC -DFRONTEND_SUPPORTS_RGB565 -I. -I./libretro-common/include -I./libretro-common/include -c -olibretro-common/glsym/rglgen.o libretro-common/glsym/rglgen.c cc -march=native -O2 -DGIT_VERSION=\"" d79460d"\" -I/opt/vc/include -I/opt/vc/include/interface/vcos/pthreads -I/opt/vc/include/vmcs_host/linux -O2 -DNDEBUG -DHAVE_OPENGLES -DHAVE_OPENGLES2 -D__LIBRETRO__ -DHAVE_STRINGS_H -DHAVE_STDINT_H -DHAVE_INTTYPES_H -DINLINE=inline -DHAS_GPU -DHAVE_OPENGLES2 -fomit-frame-pointer -Wall -W -Wno-unused-parameter -Wno-sign-compare -Wno-uninitialized -fPIC -DFRONTEND_SUPPORTS_RGB565 -I. -I./libretro-common/include -I./libretro-common/include -c -olibretro-common/glsym/glsym_es2.o libretro-common/glsym/glsym_es2.c cc -o vecx_libretro.so -fPIC -shared -Wl,--version-script=link.T -Wl,--no-undefined ./e6809.o ./e8910.o ./libretro.o ./vecx.o ./libretro-common/glsym/rglgen.o ./libretro-common/glsym/glsym_es2.o -lm -L/opt/vc/lib -lbrcmGLESv2 -lbcm_host -lpthread /usr/bin/ld: cannot find -lbrcmGLESv2 /usr/bin/ld: cannot find -lbcm_host collect2: error: ld returned 1 exit status make: *** [Makefile.libretro:716: vecx_libretro.so] Error 1 /home/pi Could not successfully build lr-vecx - Vectrex emulator - vecx port for libretro (/home/pi/RetroPie-Setup/tmp/build/lr-vecx/vecx_libretro.so not found). Errors: Could not successfully build lr-vecx - Vectrex emulator - vecx port for libretro (/home/pi/RetroPie-Setup/tmp/build/lr-vecx/vecx_libretro.so not found).
-
The makefile has also other problems. The pattern of using
uname -a
to detect the platform is dubious - if your hostname containswin
, it would try to build the Windows.dll
. -
if your hostname contains win, it would try to build the Windows .dll.
Like 'Darwin' :) But yes, thought about the same when I took a peek there.
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.