Package Details: snapcast 0.31.0-3

Git Clone URL: https://aur.archlinux.org/snapcast.git (read-only, click to copy)
Package Base: snapcast
Description: Synchronous multi-room audio player
Upstream URL: https://github.com/badaix/snapcast
Keywords: audio multi-room
Licenses: GPL
Submitter: mogwai
Maintainer: mogwai
Last Packager: mogwai
Votes: 37
Popularity: 0.012407
First Submitted: 2016-01-01 21:21 (UTC)
Last Updated: 2025-02-24 18:13 (UTC)

Latest Comments

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

slackline commented on 2025-03-14 11:37 (UTC)

Ok, I think I may have solved this. After carefully reading the error message I saw that -mno-omit-leaf-frame-pointer was still listed despite removing it from /etc/makepkg.conf.

I therefore removed the whole ./src/snapcast-0.31.0 directory and its now built and installed :-D

Sorry for the noise.

slackline commented on 2025-03-14 10:51 (UTC)

Hi,

I've encountered a problem trying to build this under ArchLinuxARM (Raspberry Pi 4b)

192.168.1.45 ❱ pacman -Qi linux
Name            : linux-rpi
Version         : 6.12.18-1
Description     : Linux kernel and modules (RPi Foundation fork)
Architecture    : armv7h
URL             : https://github.com/raspberrypi/linux
Licenses        : GPL2
Groups          : None
Provides        : linux=6.12.18  KSMBD-MODULE  WIREGUARD-MODULE
Depends On      : coreutils  firmware-raspberrypi  kmod  linux-firmware  mkinitcpio>=0.7  raspberrypi-bootloader
Optional Deps   : wireless-regdb: to set the correct wireless channels of your country [installed]
Required By     : None
Optional For    : base
Conflicts With  : linux  linux-rpi-16k  uboot-raspberrypi
Replaces        : None
Installed Size  : 28.99 MiB
Packager        : Arch Linux ARM Build System <builder+xu4@archlinuxarm.org>
Build Date      : Mon 10 Mar 2025 15:15:42 UTC
Install Date    : Tue 11 Mar 2025 20:27:25 UTC
Install Reason  : Explicitly installed
Install Script  : Yes
Validated By    : Signature

I've read the posts above from @m040601 and @mogwai and have a modern version of C++ (14.2.1). I noted the advice to disable -mno-omit-leaf-frame-pointer from CFLAGS in /etc/makepkg and have done so, still hit an error with Detecting CXX compiler ABI info - failed and Check for working CXX compiler: /usr/bin/c++ - broken.

192.168.1.45 ❱ makepkg -sri
==> Making package: snapcast 0.31.0-3 (Fri 14 Mar 2025 10:39:27 UTC)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
  -> Found snapcast-0.31.0.tar.gz
  -> Found snapweb-0.8.0.zip
  -> Found snapcast.sysusers
  -> Found snapcast.tmpfiles
  -> Found snapcast.install
==> Validating source files with sha256sums...
    snapcast-0.31.0.tar.gz ... Passed
    snapweb-0.8.0.zip ... Passed
    snapcast.sysusers ... Passed
    snapcast.tmpfiles ... Passed
    snapcast.install ... Passed
==> Extracting sources...
  -> Extracting snapcast-0.31.0.tar.gz with bsdtar
==> Starting prepare()...
==> Removing existing $pkgdir/ directory...
==> Starting build()...
-- The CXX compiler identification is GNU 14.2.1
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - failed
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ - broken
CMake Error at /usr/share/cmake/Modules/CMakeTestCXXCompiler.cmake:73 (message):
  The C++ compiler

    "/usr/bin/c++"

  is not able to compile a simple test program.

  It fails with the following output:

    Change Dir: '/home/neil/aur/snapcast/src/snapcast-0.31.0/build/CMakeFiles/CMakeScratch/TryCompile-Hmp8hB'

    Run Build Command(s): /usr/bin/cmake -E env VERBOSE=1 /usr/bin/make -f Makefile cmTC_7e1f3/fast
    /usr/bin/make  -f CMakeFiles/cmTC_7e1f3.dir/build.make CMakeFiles/cmTC_7e1f3.dir/build
    make[1]: Entering directory '/home/neil/aur/snapcast/src/snapcast-0.31.0/build/CMakeFiles/CMakeScratch/TryCompile-Hmp8hB'
    Building CXX object CMakeFiles/cmTC_7e1f3.dir/testCXXCompiler.cxx.o
    /usr/bin/c++   -march=armv7-a -mfloat-abi=hard -mfpu=neon -O2 -pipe -fstack-protector-strong -fno-plt -fexceptions         -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security         -fstack-clash-protection         -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -Wp,-D_GLIBCXX_ASSERTIONS  -o CMakeFiles/cmTC_7e1f3.dir/testCXXCompiler.cxx.o -c /home/neil/aur/snapcast/src/snapcast-0.31.0/build/CMakeFiles/CMakeScratch/TryCompile-Hmp8hB/testCXXCompiler.cxx
    c++: error: unrecognized command-line option ‘-mno-omit-leaf-frame-pointer’; did you mean ‘-fno-omit-frame-pointer’?
    make[1]: *** [CMakeFiles/cmTC_7e1f3.dir/build.make:81: CMakeFiles/cmTC_7e1f3.dir/testCXXCompiler.cxx.o] Error 1
    make[1]: Leaving directory '/home/neil/aur/snapcast/src/snapcast-0.31.0/build/CMakeFiles/CMakeScratch/TryCompile-Hmp8hB'
    make: *** [Makefile:134: cmTC_7e1f3/fast] Error 2





  CMake will not be able to correctly generate this project.
Call Stack (most recent call first):
  CMakeLists.txt:8 (project)


-- Configuring incomplete, errors occurred!
==> ERROR: A failure occurred in build().
    Aborting...

Unfortunately I can't build 0.28.0 and would be keen to move to the most recent version.

mogwai commented on 2025-02-24 18:14 (UTC)

@BrainDamage: done

mogwai commented on 2025-02-23 20:32 (UTC)

@kingo55: That's how AUR packages work: if any of the dependencies are updated, it's your own responsibility to recompile it, even if the package itself has not been updated. Most dependency updates are fine, it's mainly the major release upgrades that need recompiling. Apparently that was the case with flac now.

kingo55 commented on 2025-02-23 02:04 (UTC)

There must have been some dependency changes because I had to reinstall this when libFLAC.so.12 was removed recently.

I'm an AUR noob so I'm not sure if this has to be handled in this package.

BrainDamage commented on 2025-02-22 11:20 (UTC)

jack is missing from the depedencies, the buildsystem does attempt to detect it at build time and then include if available, and will skip otherwise. Adding jack to the dep list would make this package align with the overall arch policy of building with all available features.

mogwai commented on 2025-01-26 17:58 (UTC)

@rnestler: Fixed

rnestler commented on 2025-01-26 15:25 (UTC)

The snapserver plug-ins in in /usr/share/snapserver/plug-ins/ aren't marked as executable and thus trying to use them leads to an error:

Jan 26 15:20:14 muzikskatolo snapserver[1453]: (Snapserver) Exception: Failed to start control script: '/usr/share/snapserver/plug-ins/meta_mopidy.py', exception: execve failed: Permission denied

Running sudo chmod +x /usr/share/snapserver/plug-ins/meta_mopidy.py fixes it.

In the PKGBUILD the mode on the files seems to be explicitly set to be non-executable:

# line 58
    for file in server/etc/plug-ins/*\.*;
        do install -Dm 644 ${file} -t "${pkgdir}/usr/share/snapserver/plug-ins/";
    done

rnestler commented on 2024-09-01 21:47 (UTC)

@m040601 I got it to compile successfully using a distcc setup as documented in https://wiki.archlinux.org/title/Distcc#Cross_compiling_with_distcc

m040601 commented on 2024-05-15 04:26 (UTC) (edited on 2024-05-15 05:00 (UTC) by m040601)

Update on my efforts to try to update to the latest "snapcast" 0.28 on ArchlinuxArm, Raspberry Pi 2b (1GB RAM, 32bit not 64bit), armv7h

Thanks to @mogwai for the help and tips trying to troubleshoot this.

TLDR, May the 15th, 2024:

Unfortunately I am still not able to do it. Probably insufficient memory ? And I am loosing hope I will ever be able to do it. So I guess I'll have to be stuck with "snapcast" 0.26 version on this machine. Which, although slow and painfull, has always compiled. And still works reliably.

It was always clear that as @mogwai says,

NB: This doesn't mean that you won't run into other problems like out-of-memory, though.

I knew that also. And I also knew that I could compile and run "snapcast" 0.2x ... up till 0.26 in the last years.

But now, I can never pass that "14%" done stage, before the system runs out of memory, and the "OOM" kill it, and aborts the compilation.

[ 10%] Building CXX object server/CMakeFiles/snapserver.dir/control_server.cpp.o
[ 12%] Building CXX object server/CMakeFiles/snapserver.dir/control_session_tcp.cpp.o
[ 14%] Building CXX object server/CMakeFiles/snapserver.dir/control_session_http.cpp.o
{standard input}: Assembler messages:
{standard input}:59110: Error: undefined local label `.L7628'
{standard input}:59125: Error: undefined local label `.L7628'
c++: fatal error: Killed signal terminated program cc1plus
compilation terminated.
make[2]: *** [server/CMakeFiles/snapserver.dir/build.make:118: server/CMakeFiles/snapserver.dir/control_session_http.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:160: server/CMakeFiles/snapserver.dir/all] Error 2
make: *** [Makefile:136: all] Error 2
==> ERROR: A failure occurred in build().
    Aborting...
 -> error making: snapcast-exit status 4

Since my last trials some weeks ago, (read the previous comments on this same page), I decided to wait some weeks to see if ArchlinuxArm would update some important outdated packages. So for example I am now using

Name            : gcc
Version         : 14.1.1+r1+g43b730b9134-1
Description     : The GNU Compiler Collection - C and C++
                  frontends
Architecture    : armv7h
Depends On      : gcc-libs=14.1.1+r1+g43b730b9134-1
                  binutils>=2.28  libmpc  zstd
                  libisl.so=23-32
Build Date      : Sat 11 May 2024 05:40:51 AM WEST
Install Date    : Wed 15 May 2024 04:25:19 AM WEST

And I also followed this advice,

the alarm maintainers did not properly block upstream changes to /etc/makepkg.conf that
are incompatible with armv7h. Please remove -mno-omit-leaf-frame-pointer from the CFLAGS in /etc/makepkg.conf

@mogwai, out of curiosity,

I've got a working snapcast binary for armv7h here that I compiled on my alarm system and that
is running on my 32-bit alarm system right now.

Which system is that actually ?

I personally still have the other system with 2GB RAM (snow chromebook) but I have not yet tested compiling snapcast 0.28 there. (broken cable). Will update here when done