AUR: -> The following packages could not be installed. Manual intervention is required: deadbeef - exit status 4

This is a C++ issue. The ‘register’ storage class specifier is deprecated in C++17, therefore, you need to pass a CXX flag so that it uses an older version of C++ for the compilation.

Someone wrote a patch for this already. It’s on deadbeef’s github page.

https://github.com/DeaDBeeF-Player/deadbeef/commit/ec70bec029c379ea17442c95b2ad346a0a68d9d0

Just patch the automake file as indicated in the link above and the application should build correctly.

To apply a patch, follow the instructions on the arch wiki:
https://wiki.archlinux.org/title/Patching_packages

Additional sources:
Features that are deprecated in C++17
https://developers.redhat.com/articles/2021/08/06/porting-your-code-c17-gcc-11

2 Likes