RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login
    Please do not post a support request without first reading and following the advice in https://retropie.org.uk/forum/topic/3/read-this-first

    lr-hatari build breaks when applying .../lr-hatari/01_libcapsimage.diff + lr-vecx on x86

    Scheduled Pinned Locked Moved Help and Support
    build failedhatariretropie
    6 Posts 2 Posters 413 Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • ethelingE
      etheling
      last edited by etheling

      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

      1 Reply Last reply Reply Quote 0
      • mituM
        mitu Global Moderator
        last edited by

        Yes, it seems a recent change in the Makefile broke the RetroPie patch. Should be easily fixable - thanks for reporting it.

        1 Reply Last reply Reply Quote 1
        • mituM
          mitu Global Moderator
          last edited by

          It should be fixed now, needs an update to Retropie-Setup first to get the correct .diff.

          ethelingE 1 Reply Last reply Reply Quote 1
          • ethelingE
            etheling @mitu
            last edited by etheling

            @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).
            
            
            1 Reply Last reply Reply Quote 0
            • mituM
              mitu Global Moderator
              last edited by mitu

              The makefile has also other problems. The pattern of using uname -a to detect the platform is dubious - if your hostname contains win, it would try to build the Windows .dll.

              ethelingE 1 Reply Last reply Reply Quote 0
              • ethelingE
                etheling @mitu
                last edited by

                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.

                1 Reply Last reply Reply Quote 0
                • First post
                  Last post

                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.