Package Details: shadps4-git 0.15.0.r114.gdcdbd17-1

Git Clone URL: https://aur.archlinux.org/shadps4-git.git (read-only, click to copy)
Package Base: shadps4-git
Description: Sony PlayStation 4 emulator (CLI)
Upstream URL: https://shadps4.net/
Keywords: console emulation emulator game playstation sony
Licenses: GPL-2.0-or-later
Conflicts: shadps4
Provides: shadps4
Submitter: abouvier
Maintainer: abouvier
Last Packager: abouvier
Votes: 14
Popularity: 0.000313
First Submitted: 2024-06-27 16:10 (UTC)
Last Updated: 2026-04-20 18:58 (UTC)

Dependencies (49)

Required by (1)

Sources (13)

Latest Comments

1 2 3 4 5 6 .. 9 Next › Last »

abouvier commented on 2026-03-10 03:59 (UTC)

What is your CPU and/or what CXXFLAGS do you have in your makepkg.conf?

chandlerkc commented on 2026-03-10 03:36 (UTC)

For those who got issues with SDL SIMD intrinsics while compiling:

[ 57%] Building CXX object CMakeFiles/shadps4.dir/src/core/libraries/audio/sdl_audio_out.cpp.o
In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/15.2.1/include/immintrin.h:39,
                 from /home/chandler/.cache/yay/shadps4-git/src/shadps4/src/core/libraries/audio/sdl_audio_out.cpp:20:
/usr/lib/gcc/x86_64-pc-linux-gnu/15.2.1/include/smmintrin.h: In function ‘Libraries::AudioOut::SDLPortBackend::ConvertS16_8CH_SIMD(void const*, void*, unsigned int, float const*)’:
/usr/lib/gcc/x86_64-pc-linux-gnu/15.2.1/include/smmintrin.h:489:1: error: inlining failed in call to ‘always_inline’ ‘_mm_cvtepi16_epi32(long long __vector(2))’: target specific option mismatch
  489 | _mm_cvtepi16_epi32 (__m128i __X)
      | ^~~~~~~~~~~~~~~~~~

add -DCMAKE_CXX_FLAGS="-msse4.1" option in cmake configuring and compile again.

rharish commented on 2026-02-07 12:00 (UTC)

Needs to vendor in CLI11 as a submodule now. Here's the diff:

diff --git a/.SRCINFO b/.SRCINFO
index b00ee9e..3fe0ca3 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,6 +1,6 @@
 pkgbase = shadps4-git
    pkgdesc = Sony PlayStation 4 emulator (CLI)
-   pkgver = 0.13.0.r2.g9a3e4ea
+   pkgver = 0.14.0.r1.ge39529c
    pkgrel = 1
    url = https://shadps4.net/
    arch = aarch64
@@ -37,9 +37,10 @@ pkgbase = shadps4-git
    optdepends = renderdoc: for graphics debugging
    optdepends = shadps4-qtlauncher: for official Qt GUI
    optdepends = vulkan-validation-layers: for vulkan debugging
-   provides = shadps4=0.13.0.r2.g9a3e4ea
+   provides = shadps4=0.14.0.r1.ge39529c
    conflicts = shadps4
    source = shadps4::git+https://github.com/shadps4-emu/shadPS4.git
+   source = shadps4-CLI11::git+https://github.com/shadexternals/CLI11.git
    source = shadps4-discord-rpc::git+https://github.com/shadps4-emu/ext-discord-rpc.git
    source = shadps4-hwinfo::git+https://github.com/shadps4-emu/ext-hwinfo.git
    source = shadps4-imgui::git+https://github.com/shadps4-emu/ext-imgui.git
diff --git a/PKGBUILD b/PKGBUILD
index c72cd89..e3cc51d 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,7 +1,7 @@
 # Maintainer: Alexandre Bouvier <contact@amb.tf>
 _pkgname=shadps4
 pkgname=$_pkgname-git
-pkgver=0.13.0.r2.g9a3e4ea
+pkgver=0.14.0.r1.ge39529c
 pkgrel=1
 pkgdesc="Sony PlayStation 4 emulator (CLI)"
 arch=('aarch64' 'x86_64')
@@ -48,6 +48,7 @@ provides=("$_pkgname=$pkgver")
 conflicts=("$_pkgname")
 source=(
    "$_pkgname::git+https://github.com/shadps4-emu/shadPS4.git"
+   "$_pkgname-CLI11::git+https://github.com/shadexternals/CLI11.git"
    "$_pkgname-discord-rpc::git+https://github.com/shadps4-emu/ext-discord-rpc.git"
    "$_pkgname-hwinfo::git+https://github.com/shadps4-emu/ext-hwinfo.git"
    "$_pkgname-imgui::git+https://github.com/shadps4-emu/ext-imgui.git"
@@ -82,6 +83,7 @@ pkgver() {

 prepare() {
    cd $_pkgname
+   git config submodule.externals/CLI11.url ../$_pkgname-CLI11
    git config submodule.externals/aacdec/fdk-aac.url ../aac
    git config submodule.externals/dear_imgui.url ../$_pkgname-imgui
    git config submodule.externals/discord-rpc.url ../$_pkgname-discord-rpc

abouvier commented on 2026-01-16 22:35 (UTC)

sdl3 is not currently usable, because sdl3-git is forced by sdl3_mixer-git.

But sdl3-git doesn't have version information in the provides array. So a fix is needed in this package instead ;)

patlefort commented on 2026-01-16 22:04 (UTC)

sdl3>=3.1.8 fails with both sdl3 and sdl3-git. Is the version really needed?

abouvier commented on 2025-11-17 16:26 (UTC)

Fixes are needed in both sdl3-git and sdl3_mixer-git.

Joomzie commented on 2025-11-16 12:01 (UTC) (edited on 2025-11-21 01:24 (UTC) by Joomzie)

sdl3_mixer now seems to be a required build dependency, except there is no sdl3_mixer repo package. sdl3_mixer-git is available in the AUR, but it requires sdl3-git to build against since it requires 3.3.0 at minimum. This in turn creates a dependency conflict when building shadps4, as it tries to pull 3.2.26 from the repo.

:: sdl3-3.2.26-1.1 and sdl3-git-3.3.2.r229.g770b38b4f1-1 are in conflict. Remove sdl3-git? [y/N]

Reverting to 3.2.26 after building sdl3_mixer-git does not work, either, and a CMake error regarding sdl3_mixer is produced.

CMake Error at externals/CMakeLists.txt:75 (add_subdirectory):
  The source directory

    /.cache/yay/shadps4-git/src/shadps4/externals/sdl3_mixer

  does not contain a CMakeLists.txt file.

To add, sdl3_mixer-git seems too new, anyway. Having that installed, as well as including sdl3_mixer in the submodules list will kick off the build, but it ultimately fails with this error:

[100%] Linking CXX executable shadps4
...
/usr/bin/ld: /usr/lib/libSDL3_mixer.so.0.1.0: undefined reference to `SDL_PutAudioStreamPlanarData@SDL3_0.0.0'
/usr/bin/ld: /usr/lib/libSDL3_mixer.so.0.1.0: undefined reference to `SDL_PutAudioStreamDataNoCopy@SDL3_0.0.0'
collect2: error: ld returned 1 exit status
make[2]: *** [CMakeFiles/shadps4.dir/build.make:5222: shadps4] Error 1
make[1]: *** [CMakeFiles/Makefile2:463: CMakeFiles/shadps4.dir/all] Error 2
make: *** [Makefile:136: all] Error 2
==> ERROR: A failure occurred in build().

wantija commented on 2025-10-31 19:31 (UTC)

ShadPS4 is now cli only, the QT UI now has its own repo, which also has an AUR package now.

abouvier commented on 2025-10-26 03:31 (UTC)

Because upstream requires that version and it won't compile with a lesser version.