RetroPie / RetroPie-Setup

Shell script to set up a Raspberry Pi/Odroid/PC with RetroArch emulator and various cores
Other
9.99k stars 1.38k forks source link

dosbox-staging: update dependencies and build options #3906

Closed cmitu closed 2 months ago

cmitu commented 2 months ago
  1. I've noticed that on newer version of Meson, dependendant packages like iir and mt32emu are no longer built and linked statically. Instead, they're created and then installed as dynamic libraries. The installation goes to $md_inst/lib/<host-triplet>, so the resulting binary doesn't work out-of-the-box, but the more important issue is that the libmt32emu library is not copied. As a result, dosbox will not be able to run on such a system.

    The issue above doesn't seem to affect the RaspiOS (32/64bit) builds, but I had it happening on Debian Trixie (testing) and a recent Armbian Jammy 22.04 for OrangePi 5.

    To make sure the above issue doesn't happen, link the iir and mt32emu libraries statically. They're always downloaded and built via Meson wraps, since there are no Debian packages for them.

  2. Updated the dependency list so that:

    • libslirp and fluidsynth (v2) are installed on Bullseye or newer Debian, so they're not built via Meson wraps
    • sdl2-image-dev is not needed by dosbox-staging anymore.
    • added zlib as an explicit dependency
joolswills commented 2 months ago

Thank you.