Package Details: libretro-lrps2-git r19304.7001209-1

Git Clone URL: https://aur.archlinux.org/libretro-lrps2-git.git (read-only, click to copy)
Package Base: libretro-lrps2-git
Description: Sony PlayStation 2 core (fork of PCSX2)
Upstream URL: https://github.com/libretro/ps2
Keywords: console emulator sony
Licenses: GPL-3.0-or-later
Groups: libretro
Conflicts: libretro-lrps2, libretro-pcsx2
Provides: libretro-lrps2, libretro-pcsx2
Replaces: libretro-pcsx2
Submitter: abouvier
Maintainer: abouvier
Last Packager: abouvier
Votes: 8
Popularity: 0.010818
First Submitted: 2022-12-26 01:20 (UTC)
Last Updated: 2026-05-30 10:51 (UTC)

Latest Comments

1 2 3 4 5 Next › Last »

rubin55 commented on 2026-05-30 07:52 (UTC)

Upstream did some changes which makes the use-system-libs.patch fail again (I noticed your fix, and was able to build yesterday, but today b0rked).

rubin55 commented on 2026-05-29 06:38 (UTC)

I think the use-system-libs.patch needs to be updated:

Submodule path 'pcsx2/GS/parallel-gs': checked out '687c7d8c896335506a2aeecf8b8ad66bcd895208'
patching file cmake/BuildParameters.cmake
Hunk #1 succeeded at 13 with fuzz 2.
patching file cmake/SearchForStuff.cmake
Hunk #1 FAILED at 54.
1 out of 1 hunk FAILED -- saving rejects to file cmake/SearchForStuff.cmake.rej
patching file common/HostSys.cpp
Hunk #1 FAILED at 34.
1 out of 1 hunk FAILED -- saving rejects to file common/HostSys.cpp.rej
patching file common/StringUtil.h
patching file pcsx2/GameDatabase.cpp
Hunk #1 FAILED at 18.
Hunk #2 succeeded at 873 (offset 5 lines).
1 out of 2 hunks FAILED -- saving rejects to file pcsx2/GameDatabase.cpp.rej
==> ERROR: A failure occurred in prepare().

Technetium1 commented on 2026-05-28 12:55 (UTC)

fmt isn't a dependency anymore: https://github.com/libretro/ps2/commit/c08641f7bf9539c91acae57edcc832a6350d72ef

TheDrifter363 commented on 2026-05-21 07:24 (UTC) (edited on 2026-05-21 07:34 (UTC) by TheDrifter363)

Having trouble compiling this. Any fixes?

/home/USER/.cache/paru/clone/libretro-lrps2-git/src/libretro-lrps2/libretro/main.cpp: In function ‘void check_variables(bool)’:
/home/USER/.cache/paru/clone/libretro-lrps2-git/src/libretro-lrps2/libretro/main.cpp:1166:25: error: ‘pad_settings’ was not declared in this scope; did you mean ‘PadSettings’?
1166 |                         pad_settings[i].axis_scale = atof(var.value) / 100;
    |                         ^~~~~~~~~~~~
    |                         PadSettings
/home/USER/.cache/paru/clone/libretro-lrps2-git/src/libretro-lrps2/libretro/main.cpp:1170:25: error: ‘pad_settings’ was not declared in this scope; did you mean ‘PadSettings’?
1170 |                         pad_settings[i].axis_deadzone = atoi(var.value) * 32767 / 100;
    |                         ^~~~~~~~~~~~
    |                         PadSettings
/home/USER/.cache/paru/clone/libretro-lrps2-git/src/libretro-lrps2/libretro/main.cpp:1174:25: error: ‘pad_settings’ was not declared in this scope; did you mean ‘PadSettings’?
1174 |                         pad_settings[i].button_deadzone = atoi(var.value) * 32767 / 100;
    |                         ^~~~~~~~~~~~
    |                         PadSettings
/home/USER/.cache/paru/clone/libretro-lrps2-git/src/libretro-lrps2/libretro/main.cpp:1178:25: error: ‘pad_settings’ was not declared in this scope; did you mean ‘PadSettings’?
1178 |                         pad_settings[i].rumble_scale = atof(var.value) / 100;
    |                         ^~~~~~~~~~~~
    |                         PadSettings
/home/USER/.cache/paru/clone/libretro-lrps2-git/src/libretro-lrps2/libretro/main.cpp:1185:33: error: ‘pad_settings’ was not declared in this scope; did you mean ‘PadSettings’?
1185 |                                 pad_settings[i].axis_invert_lx = 1;
    |                                 ^~~~~~~~~~~~
    |                                 PadSettings
/home/USER/.cache/paru/clone/libretro-lrps2-git/src/libretro-lrps2/libretro/main.cpp:1190:33: error: ‘pad_settings’ was not declared in this scope; did you mean ‘PadSettings’?
1190 |                                 pad_settings[i].axis_invert_lx = -1;
    |                                 ^~~~~~~~~~~~
    |                                 PadSettings
/home/USER/.cache/paru/clone/libretro-lrps2-git/src/libretro-lrps2/libretro/main.cpp:1195:33: error: ‘pad_settings’ was not declared in this scope; did you mean ‘PadSettings’?
1195 |                                 pad_settings[i].axis_invert_lx = 1;
    |                                 ^~~~~~~~~~~~
    |                                 PadSettings
/home/USER/.cache/paru/clone/libretro-lrps2-git/src/libretro-lrps2/libretro/main.cpp:1200:33: error: ‘pad_settings’ was not declared in this scope; did you mean ‘PadSettings’?
1200 |                                 pad_settings[i].axis_invert_lx = -1;
    |                                 ^~~~~~~~~~~~
    |                                 PadSettings
/home/USER/.cache/paru/clone/libretro-lrps2-git/src/libretro-lrps2/libretro/main.cpp:1210:33: error: ‘pad_settings’ was not declared in this scope; did you mean ‘PadSettings’?
1210 |                                 pad_settings[i].axis_invert_rx = 1;
    |                                 ^~~~~~~~~~~~
    |                                 PadSettings
/home/USER/.cache/paru/clone/libretro-lrps2-git/src/libretro-lrps2/libretro/main.cpp:1215:33: error: ‘pad_settings’ was not declared in this scope; did you mean ‘PadSettings’?
1215 |                                 pad_settings[i].axis_invert_rx = -1;
    |                                 ^~~~~~~~~~~~
    |                                 PadSettings
/home/USER/.cache/paru/clone/libretro-lrps2-git/src/libretro-lrps2/libretro/main.cpp:1220:33: error: ‘pad_settings’ was not declared in this scope; did you mean ‘PadSettings’?
1220 |                                 pad_settings[i].axis_invert_rx = 1;
    |                                 ^~~~~~~~~~~~
    |                                 PadSettings
/home/USER/.cache/paru/clone/libretro-lrps2-git/src/libretro-lrps2/libretro/main.cpp:1225:33: error: ‘pad_settings’ was not declared in this scope; did you mean ‘PadSettings’?
1225 |                                 pad_settings[i].axis_invert_rx = -1;
    |                                 ^~~~~~~~~~~~
    |                                 PadSettings
make[2]: *** [libretro/CMakeFiles/pcsx2_libretro.dir/build.make:79: libretro/CMakeFiles/pcsx2_libretro.dir/main.cpp.o] Error 1

rubin55 commented on 2026-04-06 14:14 (UTC)

To build with latest rapidyaml 0.11.x, the code needs to be patched to use m_error_parse instead of m_error, which was removed in 0.11.0.

The patch, use-rapidyaml-0.11.patch:

diff --git a/cmake/SearchForStuff.cmake b/cmake/SearchForStuff.cmake
index 2742e1947..6d873d104 100644
--- a/cmake/SearchForStuff.cmake
+++ b/cmake/SearchForStuff.cmake
@@ -55,7 +55,7 @@ if((GCC_VERSION VERSION_EQUAL "9.0" OR GCC_VERSION VERSION_GREATER "9.0") AND GC
 endif()

 find_optional_system_library(fmt 3rdparty/fmt/fmt 7.1.3)
-find_optional_system_library(ryml 3rdparty/rapidyaml/rapidyaml 0.4.0)
+find_optional_system_library(ryml 3rdparty/rapidyaml/rapidyaml 0.11.1)
 find_optional_system_library(zstd 3rdparty/zstd 1.4.5)
 if (${zstd_TYPE} STREQUAL System)
    alias_library(Zstd::Zstd zstd::libzstd_shared)
diff --git a/pcsx2/GameDatabase.cpp b/pcsx2/GameDatabase.cpp
index c7ca084f8..28893a043 100644
--- a/pcsx2/GameDatabase.cpp
+++ b/pcsx2/GameDatabase.cpp
@@ -868,9 +868,10 @@ u32 GameDatabaseSchema::GameEntry::applyGSHardwareFixes(Pcsx2Config::GSOptions&
 void GameDatabase::initDatabase()
 {
    ryml::Callbacks rymlCallbacks = ryml::get_callbacks();
-   rymlCallbacks.m_error = [](const char* msg, size_t msg_len, ryml::Location loc, void*) {
-       Console.Error("[YAML] Parsing error at {%s}:{%s} (bufpos={%s}): {%s}",
-           loc.line, loc.col, loc.offset, msg);
+   rymlCallbacks.m_error_parse = [](c4::csubstr msg, ryml::ErrorDataParse const& errdata, void*) {
+       Console.Error("[YAML] Parsing error at {%zu}:{%zu} (bufpos={%zu}): {%.*s}",
+           errdata.ymlloc.line, errdata.ymlloc.col, errdata.ymlloc.offset,
+           (int)msg.len, msg.str);
    };
    ryml::set_callbacks(rymlCallbacks);
    c4::set_error_callback([](const char* msg, size_t msg_size) {

Patch to have PGBUILD use this:

diff --git a/PKGBUILD b/PKGBUILD
index f36db96..5739114 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -2,7 +2,7 @@
 _pkgname=libretro-lrps2
 pkgname=$_pkgname-git
 pkgver=r19152.2b19f7f
-pkgrel=1
+pkgrel=2
 pkgdesc="Sony PlayStation 2 core (fork of PCSX2)"
 arch=('x86_64')
 url="https://github.com/libretro/ps2"
@@ -32,8 +32,15 @@ source=(
        "parallel-gs::git+https://github.com/Arntzen-Software/parallel-gs.git"
        "volk::git+https://github.com/zeux/volk.git"
        "vulkan-headers::git+https://github.com/KhronosGroup/Vulkan-Headers.git"
+       "use-rapidyaml-0.11.patch"
 )
-b2sums=('SKIP'{,,,,,})
+b2sums=('SKIP'
+        'SKIP'
+        'SKIP'
+        'SKIP'
+        'SKIP'
+        'SKIP'
+        'e0b0df132a9f1d6ff09586d35f50cccdafe83d30e6f37b57b982121ab8992b7da29b831db1a65ecc5f39b724c8d50f0bc49b3069afcde9e4776207b5441c69bc')

 pkgver() {
        cd $_pkgname
@@ -42,6 +49,7 @@ pkgver() {

 prepare() {
        cd $_pkgname
+       patch -p1 < "${srcdir}/use-rapidyaml-0.11.patch"
        # shellcheck disable=SC2154
        git config submodule.3rdparty/glslang/glslang.url "$srcdir"/glslang
        git config submodule.3rdparty/vulkan-headers.url "$srcdir"/vulkan-headers

Upstream issue and pull request.

patlefort commented on 2026-04-06 04:12 (UTC)

Looks like it no longer build with the current rapidyaml version:

/pkgbuild/out/libretro-lrps2-git/src/libretro-lrps2/pcsx2/GameDatabase.cpp:872:23: error: ‘struct c4::yml::Callbacks’ has no member named ‘m_error’

rubin55 commented on 2026-03-25 13:17 (UTC)

FWIW, I got rid of the old fmt9 dependency based on this comment.

Here's the diff:

diff --git a/PKGBUILD b/PKGBUILD
index 28b5d64..555ca0c 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,7 +1,7 @@
 # Maintainer: Alexandre Bouvier <contact@amb.tf>
 _pkgname=libretro-lrps2
 pkgname=$_pkgname-git
-pkgver=r19151.416291a
+pkgver=r19152.2b19f7f
 pkgrel=1
 pkgdesc="Sony PlayStation 2 core (fork of PCSX2)"
 arch=('x86_64')
@@ -12,7 +12,7 @@ depends=('glibc' 'libretro-core-info')
 makedepends=(
        'cmake'
        'fast_float'
-       'fmt9'
+       'fmt'
        'git'
        'libgcc'
        'libgl'
@@ -33,8 +33,9 @@ source=(
        "parallel-gs::git+https://github.com/Arntzen-Software/parallel-gs.git"
        "volk::git+https://github.com/zeux/volk.git"
        "vulkan-headers::git+https://github.com/KhronosGroup/Vulkan-Headers.git"
+       "newer-fmt.patch"
 )
-b2sums=('SKIP'{,,,,,})
+b2sums=('SKIP'{,,,,,,})

 pkgver() {
        cd $_pkgname
@@ -43,12 +44,13 @@ pkgver() {

 prepare() {
        cd $_pkgname
+       patch -p1 < "${srcdir}/newer-fmt.patch"
        # shellcheck disable=SC2154
        git config submodule.3rdparty/glslang/glslang.url "$srcdir"/glslang
        git config submodule.3rdparty/vulkan-headers.url "$srcdir"/vulkan-headers
        git config submodule.pcsx2/GS/parallel-gs.url "$srcdir"/parallel-gs
        git -c protocol.file.allow=always submodule update
-       sed -i '/fmt/s/7\.1\.3/&...<10/' cmake/SearchForStuff.cmake
+       sed -i '/fmt/s/7\.1\.3/12/' cmake/SearchForStuff.cmake
        sed -i '/USE_SYSTEM_LIBS/d' cmake/BuildParameters.cmake
        sed -i 's|\.\./3rdparty/rapidyaml/rapidyaml/ext/c4core/src/c4/ext/fast_float/include/||' common/StringUtil.h
        sed -i 's|\.\./3rdparty/rapidyaml/rapidyaml/src/||' pcsx2/GameDatabase.cpp

newer-fmt.patch simply adds the mentioned header file to GameDatabase.cpp:

index c7ca084f8..54426ac8f 100644
--- a/pcsx2/GameDatabase.cpp
+++ b/pcsx2/GameDatabase.cpp
@@ -18,6 +18,7 @@
 #include <optional>

 #include <fmt/format.h>
+#include <fmt/ranges.h>

 #include "../3rdparty/rapidyaml/rapidyaml/src/ryml_std.hpp"
 #include "../3rdparty/rapidyaml/rapidyaml/src/ryml.hpp"

abouvier commented on 2025-10-02 21:34 (UTC)

Yes, and you should address your complaints to the rapidyaml maintainer ;)

v1993 commented on 2025-10-02 21:30 (UTC)

libryml.so can't be found anymore.

jclsn commented on 2025-08-01 11:57 (UTC)

@yyatsuta: You'd probably have to file an issue here https://github.com/libretro/ps2. It probably has nothing to do with the AUR package.