FYI, as of today shadps4 needs vulkan-headers v.305, but the arch package in the repos is out of date. to build you need to switch to vulkan-headers-git from the AUR. Hopefully the arch package will be updated soon.
Search Criteria
Package Details: shadps4-git 0.5.0.r203.ga3967ccd-1
Package Actions
Git Clone URL: | https://aur.archlinux.org/shadps4-git.git (read-only, click to copy) |
---|---|
Package Base: | shadps4-git |
Description: | Sony PlayStation 4 emulator |
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: | 16 |
Popularity: | 4.38 |
First Submitted: | 2024-06-27 16:10 (UTC) |
Last Updated: | 2025-01-20 13:53 (UTC) |
Dependencies (43)
- crypto++ (crypto++-gitAUR)
- gcc-libs (gcc-libs-gitAUR, gccrs-libs-gitAUR, gcc11-libsAUR, gcc-libs-snapshotAUR)
- glibc (glibc-gitAUR, glibc-linux4AUR, glibc-eacAUR, glibc-eac-binAUR)
- glslang (glslang-gitAUR)
- hicolor-icon-theme (hicolor-icon-theme-gitAUR)
- libavcodec.so (ffmpeg-nvcodec-11-1-gitAUR, ffmpeg3.4AUR, ffmpeg-compat-55AUR, ffmpeg-compat-54AUR, ffmpeg2.8AUR, ffmpeg-cudaAUR, ffmpeg-decklinkAUR, ffmpeg-amd-fullAUR, ffmpeg-ffplayoutAUR, ffmpeg-gitAUR, lib32-ffmpegAUR, ffmpeg-amd-full-gitAUR, ffmpeg-fullAUR, ffmpeg-full-gitAUR, ffmpeg-libfdk_aacAUR, ffmpeg-headlessAUR, ffmpeg-obsAUR, ffmpeg, ffmpeg4.4)
- libavformat.so (ffmpeg-nvcodec-11-1-gitAUR, ffmpeg3.4AUR, ffmpeg-compat-55AUR, ffmpeg-compat-54AUR, ffmpeg2.8AUR, ffmpeg-cudaAUR, ffmpeg-decklinkAUR, ffmpeg-amd-fullAUR, ffmpeg-ffplayoutAUR, ffmpeg-gitAUR, lib32-ffmpegAUR, ffmpeg-amd-full-gitAUR, ffmpeg-fullAUR, ffmpeg-full-gitAUR, ffmpeg-libfdk_aacAUR, ffmpeg-headlessAUR, ffmpeg-obsAUR, ffmpeg, ffmpeg4.4)
- libavutil.so (libavutil-52AUR, ffmpeg-nvcodec-11-1-gitAUR, ffmpeg3.4AUR, ffmpeg2.8AUR, ffmpeg-cudaAUR, ffmpeg-decklinkAUR, ffmpeg-amd-fullAUR, ffmpeg-ffplayoutAUR, ffmpeg-gitAUR, lib32-ffmpegAUR, ffmpeg-amd-full-gitAUR, ffmpeg-fullAUR, ffmpeg-full-gitAUR, ffmpeg-libfdk_aacAUR, ffmpeg-headlessAUR, ffmpeg-obsAUR, ffmpeg, ffmpeg4.4)
- libfmt.so (fmt-gitAUR, fmt9AUR, fmt10AUR, fmt)
- libpng16.so (libpng-gitAUR, libpng-apngAUR, lib32-libpng, libpng)
- libswresample.so (ffmpeg-nvcodec-11-1-gitAUR, ffmpeg3.4AUR, ffmpeg2.8AUR, ffmpeg-cudaAUR, ffmpeg-decklinkAUR, ffmpeg-amd-fullAUR, ffmpeg-ffplayoutAUR, ffmpeg-gitAUR, lib32-ffmpegAUR, ffmpeg-amd-full-gitAUR, ffmpeg-fullAUR, ffmpeg-full-gitAUR, ffmpeg-libfdk_aacAUR, ffmpeg-headlessAUR, ffmpeg-obsAUR, ffmpeg, ffmpeg4.4)
- libswscale.so (ffmpeg-nvcodec-11-1-gitAUR, ffmpeg3.4AUR, ffmpeg2.8AUR, ffmpeg-cudaAUR, ffmpeg-decklinkAUR, ffmpeg-amd-fullAUR, ffmpeg-ffplayoutAUR, ffmpeg-gitAUR, lib32-ffmpegAUR, ffmpeg-amd-full-gitAUR, ffmpeg-fullAUR, ffmpeg-full-gitAUR, ffmpeg-libfdk_aacAUR, ffmpeg-headlessAUR, ffmpeg-obsAUR, ffmpeg, ffmpeg4.4)
- libxxhash.so (xxhash)
- libz.so (zlib-gitAUR, lib32-zlib, zlib, zlib-ng-compat)
- pugixml (pugixml-gitAUR)
- qt6-base (qt6-base-gitAUR, qt6-base-headlessAUR)
- qt6-multimedia
- sdl3AUR (sdl3-gitAUR)
- boost (boost-gitAUR) (make)
- cmake (cmake-gitAUR) (make)
- ffmpeg (ffmpeg-nvcodec-11-1-gitAUR, ffmpeg-cudaAUR, ffmpeg-decklinkAUR, ffmpeg-amd-fullAUR, ffmpeg-ffplayoutAUR, ffmpeg-gitAUR, ffmpeg-amd-full-gitAUR, ffmpeg-fullAUR, ffmpeg-full-gitAUR, ffmpeg-libfdk_aacAUR, ffmpeg-headlessAUR, ffmpeg-obsAUR) (make)
- fmt (fmt-gitAUR) (make)
- git (git-gitAUR, git-glAUR) (make)
- half (opencl-amd-devAUR) (make)
- libpng (libpng-gitAUR, libpng-apngAUR) (make)
- magic_enumAUR (magic_enum-gitAUR) (make)
- qt6-base (qt6-base-gitAUR, qt6-base-headlessAUR) (make)
- qt6-multimedia (make)
- qt6-tools (make)
- rapidjson (rapidjson-gitAUR) (make)
- renderdoc (renderdoc-nightlyAUR, renderdoc-gitAUR, renderdoc-minimalAUR) (make)
- robin-map (make)
- spirv-headers (spirv-headers-gitAUR) (make)
- stb (stb-gitAUR) (make)
- toml11 (toml11-gitAUR) (make)
- vulkan-headers (vulkan-headers-gitAUR) (make)
- vulkan-memory-allocatorAUR (make)
- xbyakAUR (xbyak-gitAUR) (make)
- xxhash (xxhash-gitAUR) (make)
- zlib (zlib-ng-compat-gitAUR, zlib-gitAUR, zlib-ng-compat) (make)
- zycore-c (zycore-c-gitAUR) (make)
- renderdoc (renderdoc-nightlyAUR, renderdoc-gitAUR, renderdoc-minimalAUR) (optional) – for graphics debugging
- vulkan-validation-layers (vulkan-validation-layers-gitAUR) (optional) – for vulkan debugging
Required by (0)
Sources (7)
username227 commented on 2025-01-20 13:05 (UTC)
abouvier commented on 2025-01-13 00:39 (UTC)
@username227 Your sdl3
package is out of date, and you do partial upgrades.
username227 commented on 2025-01-13 00:29 (UTC) (edited on 2025-01-13 00:30 (UTC) by username227)
Getting a new build error. The error is not upstream, because upstream still builds fine, so it's something in the pkgbuild.
[ 34%] Building CXX object CMakeFiles/shadps4.dir/src/qt_gui/game_info.cpp.o
/var/tmp/pamac-build-jerry/shadps4-git/src/shadps4/src/imgui/renderer/imgui_impl_sdl3.cpp:74:9: error: use of undeclared identifier 'SDL_RunOnMainThread'
74 | SDL_RunOnMainThread(
| ^
/var/tmp/pamac-build-jerry/shadps4-git/src/shadps4/src/imgui/renderer/imgui_impl_sdl3.cpp:86:9: error: use of undeclared identifier 'SDL_RunOnMainThread'
86 | SDL_RunOnMainThread(
| ^
2 errors generated.
make[2]: *** [CMakeFiles/shadps4.dir/build.make:289: CMakeFiles/shadps4.dir/src/imgui/renderer/imgui_impl_sdl3.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [CMakeFiles/Makefile2:326: CMakeFiles/shadps4.dir/all] Error 2
make: *** [Makefile:136: all] Error 2
FreePenguin commented on 2025-01-11 12:59 (UTC)
Please lower requirements for zlib otherwise this PKGBUILD is not compatible with zlib-ng-compat: https://gitlab.archlinux.org/archlinux/packaging/packages/lib32-zlib/-/commit/970e67d989e33e5caf46d499c98075ff5d816ba4
diff --git a/PKGBUILD b/PKGBUILD
index 4d0cbc3..cb038cd 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,7 +1,7 @@
# Maintainer: Alexandre Bouvier <contact@amb.tf>
_pkgname=shadps4
pkgname=$_pkgname-git
-pkgver=0.5.0.r135.g0eee36cb
+pkgver=0.5.0.r145.g5c845d4e
pkgrel=1
pkgdesc="Sony PlayStation 4 emulator"
arch=('aarch64' 'x86_64')
@@ -38,7 +38,7 @@ makedepends=(
'vulkan-memory-allocator>=3.1'
'xbyak>=7.07'
'xxhash>=0.8.2'
- 'zlib>=1:1.3'
+ 'zlib'
'zycore-c' # 'zydis>=5'
)
optdepends=(
username227 commented on 2025-01-07 11:57 (UTC)
@abouvier, that makes no sense. It only builds properly OUTSIDE of the chroot. in the chroot it builds but doesn't work properly.
abouvier commented on 2025-01-07 09:50 (UTC)
@username227 Because in a clean chroot you link against the updated fmt
library, whereas the version installed on your live system is the incompatible old one. You shouldn't do partial upgrades and just install your newly compiled shadps4
.
username227 commented on 2025-01-01 16:12 (UTC)
OK so I finally understand what is going on, but I don't understand why.
The error I mentioned only occurs when I build in a clean chroot. It builds fine but won't open. When I add !buildflags to the options and build in a chroot, then the program WILL open but games will not start.
When I build outside of a chroot with just a simple makepkg command, then the !makeflags option is not necessary and as long as I use clang like you suggested, it works perfectly. This is quite unusual in my experience. There must be some sort of dependency or makedepends that is missing from the pkgbuild but is present on my system.
username227 commented on 2025-01-01 15:31 (UTC)
@rharish, when I build it your way, i cannot open the program. I get this error: shadps4: symbol lookup error: shadps4: undefined symbol: _ZN3fmt3v116detail10vformat_toERNS1_6bufferIcEENS0_17basic_string_viewIcEENS0_17basic_format_argsINS0_7contextEEENS1_10locale_refE
If I build it my way, I can open the program properly but cannot run games properly. If I build it manually the dev's way then it works. not sure why.
rharish commented on 2024-12-31 20:13 (UTC)
Hi, I can build shadPS4 properly (and it runs well) if I use Clang instead of GCC. Here is the diff with the current PKGBUILD to get it to run properly (I also removed cubeb
since upstream removed this audio backend):
diff --git a/PKGBUILD b/PKGBUILD
index c4687d7..f12e71a 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -19,7 +19,7 @@ depends=(
makedepends=(
'boost>=1.84'
'cmake>=3.16.3'
- 'cubeb'
+ 'clang'
'ffmpeg>=2:5.1.2'
'fmt>=10.2'
'git'
@@ -87,6 +87,8 @@ build() {
cmake -B build -S $_pkgname \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_C_FLAGS_RELEASE="-DNDEBUG" \
+ -DCMAKE_CXX_COMPILER=clang++ \
+ -DCMAKE_C_COMPILER=clang \
-DCMAKE_CXX_FLAGS_RELEASE="-DNDEBUG" \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_SKIP_INSTALL_RPATH=ON \
@@ -102,7 +104,6 @@ package() {
'libavcodec.so'
'libavformat.so'
'libavutil.so'
- 'libcubeb.so'
'libfmt.so'
'libpng16.so'
'libswresample.so'
username227 commented on 2024-12-31 16:21 (UTC)
OK I was able to my own pkgbuild working again. It was building properly but not executing properly due to changes in the buildflags. My personal pkgbuild is here and it works and builds fine on arch. Posting here just in case anybody is interested.
Pinned Comments
abouvier commented on 2024-10-10 22:47 (UTC) (edited on 2024-10-13 04:36 (UTC) by abouvier)
Data previously stored in
~/.local/share/shadps4/user
are now searched in~/.local/share/shadPS4