#1139494 vimix: FTBFS: /usr/include/ableton/discovery/IpInterface.hpp:32:24: error: 'from_string' is not a member of 'ableton::discovery::IpAddressV4' {aka 'link_asio_1_28_0::ip::address_v4'}

#1139494#5
Date:
2026-06-09 09:48:13 UTC
From:
To:
Dear maintainer:

During a rebuild of all packages in unstable, this package failed to build.

Below you will find the last part of the build log (probably the most
relevant part, but not necessarily). If required, the full build log
is available here:

https://people.debian.org/~sanvila/build-logs/202606/

About the archive rebuild: The build was made on virtual machines from AWS,
using sbuild and a reduced chroot with only build-essential packages.

If you cannot reproduce the bug please contact me privately, as I
am willing to provide ssh access to a virtual machine where the bug is
fully reproducible.

If this is really a bug in one of the build-depends, please use
reassign and add an affects on src:vimix, so that this is still
visible in the BTS web page for this package.

Thanks.
--------------------------------------------------------------------------------
[...]
In file included from /usr/include/ableton/discovery/UdpMessenger.hpp:23,
                 from /usr/include/ableton/discovery/PeerGateway.hpp:22,
                 from /usr/include/ableton/link/Gateway.hpp:22,
                 from /usr/include/ableton/link/Controller.hpp:24,
                 from /usr/include/ableton/platforms/Config.hpp:22,
                 from /usr/include/ableton/Link.hpp:25,
                 from /<<PKGBUILDDIR>>/src/Metronome.cpp:32:
/usr/include/ableton/discovery/IpInterface.hpp: In function ‘ableton::discovery::UdpEndpoint ableton::discovery::multicastEndpointV4()’:
/usr/include/ableton/discovery/IpInterface.hpp:32:24: error: ‘from_string’ is not a member of ‘ableton::discovery::IpAddressV4’ {aka ‘link_asio_1_28_0::ip::address_v4’}
   32 |   return {IpAddressV4::from_string("224.76.78.75"), 20808};
      |                        ^~~~~~~~~~~
/usr/include/ableton/discovery/IpInterface.hpp:32:58: error: could not convert ‘{<expression error>, 20808}’ from ‘<brace-enclosed initializer list>’ to ‘ableton::discovery::UdpEndpoint’ {aka ‘link_asio_1_28_0::ip::basic_endpoint<link_asio_1_28_0::ip::udp>’}
   32 |   return {IpAddressV4::from_string("224.76.78.75"), 20808};
      |                                                          ^
      |                                                          |
      |                                                          <brace-enclosed initializer list>
In file included from /usr/include/ableton/link/PeerState.hpp:23,
                 from /usr/include/ableton/link/Measurement.hpp:24,
                 from /usr/include/ableton/link/MeasurementService.hpp:24,
                 from /usr/include/ableton/link/Gateway.hpp:23:
/usr/include/ableton/link/MeasurementEndpointV4.hpp: In function ‘uint32_t ableton::link::sizeInByteStream(MeasurementEndpointV4)’:
/usr/include/ableton/link/MeasurementEndpointV4.hpp:44:66: error: ‘class link_asio_1_28_0::ip::address_v4’ has no member named ‘to_ulong’
   44 |              static_cast<std::uint32_t>(mep.ep.address().to_v4().to_ulong()))
      |                                                                  ^~~~~~~~
/usr/include/ableton/link/MeasurementEndpointV4.hpp: In function ‘It ableton::link::toNetworkByteStream(MeasurementEndpointV4, It)’:
/usr/include/ableton/link/MeasurementEndpointV4.hpp:54:61: error: ‘class link_asio_1_28_0::ip::address_v4’ has no member named ‘to_ulong’ [-Wtemplate-body]
   54 |         static_cast<std::uint32_t>(mep.ep.address().to_v4().to_ulong()), std::move(out)));
      |                                                             ^~~~~~~~
In file included from /usr/include/ableton/platforms/asio/Context.hpp:23,
                 from /usr/include/ableton/platforms/Config.hpp:40:
/usr/include/ableton/platforms/asio/AsioTimer.hpp: At global scope:
/usr/include/ableton/platforms/asio/AsioTimer.hpp:46:44: error: ‘io_service’ in namespace ‘link_asio_1_28_0’ does not name a type; did you mean ‘use_service’?
   46 |   using IoService = ::LINK_ASIO_NAMESPACE::io_service;
      |                                            ^~~~~~~~~~
      |                                            use_service
/usr/include/ableton/platforms/asio/AsioTimer.hpp:50:22: error: expected ‘)’ before ‘&’ token
   50 |   AsioTimer(IoService& io)
      |            ~         ^
      |                      )
/usr/include/ableton/platforms/asio/AsioTimer.hpp: In member function ‘void ableton::platforms::link_asio_1_28_0::AsioTimer::expires_from_now(T)’:
/usr/include/ableton/platforms/asio/AsioTimer.hpp:85:14: error: ‘class link_asio_1_28_0::basic_waitable_timer<std::chrono::_V2::system_clock>’ has no member named ‘expires_from_now’ [-Wtemplate-body]
   85 |     mpTimer->expires_from_now(std::move(duration));
      |              ^~~~~~~~~~~~~~~~
/usr/include/ableton/platforms/asio/AsioTimer.hpp: In member function ‘ableton::platforms::link_asio_1_28_0::AsioTimer::ErrorCode ableton::platforms::link_asio_1_28_0::AsioTimer::cancel()’:
/usr/include/ableton/platforms/asio/AsioTimer.hpp:91:20: error: no matching function for call to ‘link_asio_1_28_0::basic_waitable_timer<std::chrono::_V2::system_clock>::cancel(ableton::platforms::link_asio_1_28_0::AsioTimer::ErrorCode&)’
   91 |     mpTimer->cancel(ec);
      |     ~~~~~~~~~~~~~~~^~~~
/usr/include/ableton/platforms/asio/AsioTimer.hpp:91:20: note: there is 1 candidate
In file included from /usr/include/asio/steady_timer.hpp:19,
                 from /usr/include/asio/basic_socket_streambuf.hpp:30,
                 from /usr/include/asio/basic_socket_iostream.hpp:24,
                 from /usr/include/asio.hpp:41,
                 from /usr/include/ableton/platforms/asio/AsioWrapper.hpp:78,
                 from /usr/include/ableton/discovery/AsioTypes.hpp:22,
                 from /usr/include/ableton/discovery/PeerGateways.hpp:22,
                 from /usr/include/ableton/discovery/Service.hpp:22,
                 from /usr/include/ableton/link/Controller.hpp:22:
/usr/include/asio/basic_waitable_timer.hpp:406:15: note: candidate 1: ‘std::size_t link_asio_1_28_0::basic_waitable_timer<Clock, WaitTraits, Executor>::cancel() [with Clock = std::chrono::_V2::system_clock; WaitTraits = link_asio_1_28_0::wait_traits<std::chrono::_V2::system_clock>; Executor = link_asio_1_28_0::any_io_executor; std::size_t = long unsigned int]’
  406 |   std::size_t cancel()
      |               ^~~~~~
/usr/include/asio/basic_waitable_timer.hpp:406:15: note: candidate expects 0 arguments, 1 provided
In file included from /usr/include/ableton/platforms/asio/Context.hpp:25:
/usr/include/ableton/platforms/asio/Socket.hpp: At global scope:
/usr/include/ableton/platforms/asio/Socket.hpp:37:43: error: expected ‘)’ before ‘&’ token [-Wtemplate-body]
   37 |   Socket(::LINK_ASIO_NAMESPACE::io_service& io, ::LINK_ASIO_NAMESPACE::ip::udp protocol)
      |         ~                                 ^
      |                                           )
/usr/include/ableton/platforms/asio/Socket.hpp:73:43: error: expected ‘)’ before ‘&’ token [-Wtemplate-body]
   73 |     Impl(::LINK_ASIO_NAMESPACE::io_service& io, ::LINK_ASIO_NAMESPACE::ip::udp protocol)
      |         ~                                 ^
      |                                           )
/usr/include/ableton/platforms/asio/Context.hpp:62:44: error: ‘io_service’ in namespace ‘link_asio_1_28_0’ does not name a type; did you mean ‘use_service’? [-Wtemplate-body]
   62 |   using IoService = ::LINK_ASIO_NAMESPACE::io_service;
      |                                            ^~~~~~~~~~
      |                                            use_service
/usr/include/ableton/platforms/asio/Context.hpp:63:16: error: ‘IoService’ does not name a type [-Wtemplate-body]
   63 |   using Work = IoService::work;
      |                ^~~~~~~~~
/usr/include/ableton/platforms/asio/Context.hpp:233:42: error: ‘io_service’ is not a member of ‘link_asio_1_28_0’; did you mean ‘use_service’? [-Wtemplate-body]
  233 |   std::unique_ptr<::LINK_ASIO_NAMESPACE::io_service> mpService;
      |                                          ^~~~~~~~~~
      |                                          use_service
/usr/include/ableton/platforms/asio/Context.hpp:233:52: error: template argument 1 is invalid [-Wtemplate-body]
  233 |   std::unique_ptr<::LINK_ASIO_NAMESPACE::io_service> mpService;
      |                                                    ^
/usr/include/ableton/platforms/asio/Context.hpp:233:52: error: template argument 2 is invalid [-Wtemplate-body]
/usr/include/ableton/platforms/asio/Context.hpp:234:42: error: ‘io_service’ is not a member of ‘link_asio_1_28_0’; did you mean ‘use_service’? [-Wtemplate-body]
  234 |   std::unique_ptr<::LINK_ASIO_NAMESPACE::io_service::work> mpWork;
      |                                          ^~~~~~~~~~
      |                                          use_service
/usr/include/ableton/platforms/asio/Context.hpp:234:58: error: template argument 1 is invalid [-Wtemplate-body]
  234 |   std::unique_ptr<::LINK_ASIO_NAMESPACE::io_service::work> mpWork;
      |                                                          ^
/usr/include/ableton/platforms/asio/Context.hpp:234:58: error: template argument 2 is invalid [-Wtemplate-body]
/usr/include/ableton/platforms/asio/Context.hpp: In constructor ‘ableton::platforms::link_asio_1_28_0::Context<ScanIpIfAddrs, LogT, ThreadFactoryT>::Context(ExceptionHandler)’:
/usr/include/ableton/platforms/asio/Context.hpp:72:21: error: expected type-specifier before ‘IoService’ [-Wtemplate-body]
   72 |     : mpService(new IoService())
      |                     ^~~~~~~~~
/usr/include/ableton/platforms/asio/Context.hpp:73:18: error: expected type-specifier before ‘Work’ [-Wtemplate-body]
   73 |     , mpWork(new Work(*mpService))
      |                  ^~~~
/usr/include/ableton/platforms/asio/Context.hpp:76:10: error: ‘IoService’ has not been declared [-Wtemplate-body]
   76 |       [](IoService& service, ExceptionHandler handler) {
      |          ^~~~~~~~~
/usr/include/ableton/platforms/asio/Context.hpp: In lambda function:
/usr/include/ableton/platforms/asio/Context.hpp:81:21: error: request for member ‘run’ in ‘service’, which is of non-class type ‘int’ [-Wtemplate-body]
   81 |             service.run();
      |                     ^~~
/usr/include/ableton/platforms/asio/Context.hpp: In constructor ‘ableton::platforms::link_asio_1_28_0::Context<ScanIpIfAddrs, LogT, ThreadFactoryT>::Context(ExceptionHandler)’:
/usr/include/ableton/platforms/asio/Context.hpp:90:16: error: invalid type argument of unary ‘*’ (have ‘int’) [-Wtemplate-body]
   90 |       std::ref(*mpService), std::move(exceptHandler));
      |                ^~~~~~~~~~
/usr/include/ableton/platforms/asio/Context.hpp: In destructor ‘ableton::platforms::link_asio_1_28_0::Context<ScanIpIfAddrs, LogT, ThreadFactoryT>::~Context()’:
/usr/include/ableton/platforms/asio/Context.hpp:108:14: error: request for member ‘reset’ in ‘((ableton::platforms::link_asio_1_28_0::Context<ScanIpIfAddrs, LogT, ThreadFactoryT>*)this)->ableton::platforms::link_asio_1_28_0::Context<ScanIpIfAddrs, LogT, ThreadFactoryT>::mpWork’, which is of non-class type ‘int’ [-Wtemplate-body]
  108 |       mpWork.reset();
      |              ^~~~~
/usr/include/ableton/platforms/asio/Context.hpp: In member function ‘void ableton::platforms::link_asio_1_28_0::Context<ScanIpIfAddrs, LogT, ThreadFactoryT>::stop()’:
/usr/include/ableton/platforms/asio/Context.hpp:117:14: error: request for member ‘reset’ in ‘((ableton::platforms::link_asio_1_28_0::Context<ScanIpIfAddrs, LogT, ThreadFactoryT>*)this)->ableton::platforms::link_asio_1_28_0::Context<ScanIpIfAddrs, LogT, ThreadFactoryT>::mpWork’, which is of non-class type ‘int’ [-Wtemplate-body]
  117 |       mpWork.reset();
      |              ^~~~~
/usr/include/ableton/platforms/asio/Context.hpp:118:16: error: base operand of ‘->’ is not a pointer [-Wtemplate-body]
  118 |       mpService->stop();
      |                ^~
/usr/include/ableton/platforms/asio/Context.hpp: In member function ‘ableton::platforms::link_asio_1_28_0::Context<ScanIpIfAddrs, LogT, ThreadFactoryT>::Socket<BufferSize> ableton::platforms::link_asio_1_28_0::Context<ScanIpIfAddrs, LogT, ThreadFactoryT>::openUnicastSocket(ableton::discovery::IpAddress)’:
/usr/include/ableton/platforms/asio/Context.hpp:128:41: error: invalid type argument of unary ‘*’ (have ‘int’) [-Wtemplate-body]
  128 |       addr.is_v4() ? Socket<BufferSize>{*mpService, ::LINK_ASIO_NAMESPACE::ip::udp::v4()}
      |                                         ^~~~~~~~~~
/usr/include/ableton/platforms/asio/Context.hpp:129:41: error: invalid type argument of unary ‘*’ (have ‘int’) [-Wtemplate-body]
  129 |                    : Socket<BufferSize>{*mpService, ::LINK_ASIO_NAMESPACE::ip::udp::v6()};
      |                                         ^~~~~~~~~~
/usr/include/ableton/platforms/asio/Context.hpp: In member function ‘ableton::platforms::link_asio_1_28_0::Context<ScanIpIfAddrs, LogT, ThreadFactoryT>::Socket<BufferSize> ableton::platforms::link_asio_1_28_0::Context<ScanIpIfAddrs, LogT, ThreadFactoryT>::openMulticastSocket(const ableton::discovery::IpAddress&)’:
/usr/include/ableton/platforms/asio/Context.hpp:159:41: error: invalid type argument of unary ‘*’ (have ‘int’) [-Wtemplate-body]
  159 |       addr.is_v4() ? Socket<BufferSize>{*mpService, ::LINK_ASIO_NAMESPACE::ip::udp::v4()}
      |                                         ^~~~~~~~~~
/usr/include/ableton/platforms/asio/Context.hpp:160:41: error: invalid type argument of unary ‘*’ (have ‘int’) [-Wtemplate-body]
  160 |                    : Socket<BufferSize>{*mpService, ::LINK_ASIO_NAMESPACE::ip::udp::v6()};
      |                                         ^~~~~~~~~~
/usr/include/ableton/platforms/asio/Context.hpp: In member function ‘ableton::platforms::link_asio_1_28_0::Context<ScanIpIfAddrs, LogT, ThreadFactoryT>::Timer ableton::platforms::link_asio_1_28_0::Context<ScanIpIfAddrs, LogT, ThreadFactoryT>::makeTimer() const’:
/usr/include/ableton/platforms/asio/Context.hpp:204:13: error: invalid type argument of unary ‘*’ (have ‘int’) [-Wtemplate-body]
  204 |     return {*mpService};
      |             ^~~~~~~~~~
/usr/include/ableton/platforms/asio/Context.hpp:204:23: error: could not convert ‘{<expression error>}’ from ‘<brace-enclosed initializer list>’ to ‘ableton::platforms::link_asio_1_28_0::Context<ScanIpIfAddrs, LogT, ThreadFactoryT>::Timer’ {aka ‘ableton::platforms::link_asio_1_28_0::AsioTimer’} [-Wtemplate-body]
  204 |     return {*mpService};
      |                       ^
      |                       |
      |                       <brace-enclosed initializer list>
/usr/include/ableton/platforms/asio/Context.hpp: In member function ‘void ableton::platforms::link_asio_1_28_0::Context<ScanIpIfAddrs, LogT, ThreadFactoryT>::async(Handler)’:
/usr/include/ableton/platforms/asio/Context.hpp:215:14: error: base operand of ‘->’ is not a pointer [-Wtemplate-body]
  215 |     mpService->post(std::move(handler));
      |              ^~
/usr/include/ableton/platforms/asio/Context.hpp: In instantiation of ‘ableton::platforms::link_asio_1_28_0::Context<ScanIpIfAddrs, LogT, ThreadFactoryT>::Socket<BufferSize> ableton::platforms::link_asio_1_28_0::Context<ScanIpIfAddrs, LogT, ThreadFactoryT>::openMulticastSocket(const ableton::discovery::IpAddress&) [with long unsigned int BufferSize = 512; ScanIpIfAddrs = ableton::platforms::posix::ScanIpIfAddrs; LogT = ableton::util::NullLog; ThreadFactoryT = ableton::platforms::linux_::ThreadFactory; Socket<BufferSize> = ableton::platforms::link_asio_1_28_0::Socket<512>; ableton::discovery::IpAddress = link_asio_1_28_0::ip::address]’:
/usr/include/ableton/discovery/IpInterface.hpp:59:79:   required from ‘ableton::discovery::IpInterface<IoContext, MaxPacketSize>::IpInterface(ableton::util::Injected<T>, const ableton::discovery::IpAddress&) [with IoContext = ableton::platforms::link_asio_1_28_0::Context<ableton::platforms::posix::ScanIpIfAddrs, ableton::util::NullLog, ableton::platforms::linux_::ThreadFactory>&; long unsigned int MaxPacketSize = 512; ableton::discovery::IpAddress = link_asio_1_28_0::ip::address]’
   59 |     , mMulticastReceiveSocket(mIo->template openMulticastSocket<MaxPacketSize>(addr))
      |                               ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~
/usr/include/ableton/discovery/IpInterface.hpp:126:30:   required from ‘ableton::discovery::IpInterface<IoContext, MaxPacketSize> ableton::discovery::makeIpInterface(ableton::util::Injected<IoContext>, const IpAddress&) [with long unsigned int MaxPacketSize = 512; IoContext = ableton::platforms::link_asio_1_28_0::Context<ableton::platforms::posix::ScanIpIfAddrs, ableton::util::NullLog, ableton::platforms::linux_::ThreadFactory>&; IpAddress = link_asio_1_28_0::ip::address]’
  126 |   return {std::move(io), addr};
      |                              ^
/usr/include/ableton/discovery/PeerGateway.hpp:241:52:   req [too-long-redacted] link_asio_1_28_0::ip::address]’
  241 |   auto iface = makeIpInterface<v1::kMaxMessageSize>(injectRef(*io), addr);
      |                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
/usr/include/ableton/link/Gateway.hpp:47:42:   required from [too-long-redacted] link_asio_1_28_0::ip::address]’
   47 |     , mPeerGateway(discovery::makeGateway(util::injectRef(*mIo),
      |                    ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
   48 |         std::move(addr),
      |         ~~~~~~~~~~~~~~~~
   49 |         std::move(observer),
      |         ~~~~~~~~~~~~~~~~~~~~
   50 |         PeerState{std::move(nodeState), mMeasurement.endpoint()}))
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/ableton/link/Controller.hpp:738:25:   [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/usr/include/ableton/discovery/InterfaceScanner.hpp:72:17:   [too-long-redacted] orms::linux_::ThreadFactory>&]’
   72 |     (*mCallback)(std::move(addrs));
      |     ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
/usr/include/ableton/discovery/InterfaceScanner.hpp:54:7:    [too-long-redacted] orms::linux_::ThreadFactory>&]’
   54 |       scan();
      |       ^~~~
/usr/include/ableton/discovery/PeerGateways.hpp:70:22:   required from ‘void ableton::discovery::PeerGateways<NodeState, GatewayFactory, IoContext>::enable(bool) [with NodeState = std::pair<ableton::link::NodeState, ableton::link::GhostXForm>; GatewayFactory = ableton::link::Controller<std::function<void(long unsigned int)>, std::function<void(ableton::link::Tempo)>, std::function<void(bool)>, ableton::platforms::linux_::Clock<4>, ableton::platforms::stl::Random, ableton::platforms::link_asio_1_28_0::Context<ableton::platforms::posix::ScanIpIfAddrs, ableton::util::NullLog, ableton::platforms::linux_::ThreadFactory> >::GatewayFactory; IoContext = ableton::platforms::link_asio_1_28_0::Context<ableton::platforms::posix::ScanIpIfAddrs, ableton::util::NullLog, ableton::platforms::linux_::ThreadFactory>&]’
   70 |     mpScanner->enable(bEnable);
      |     ~~~~~~~~~~~~~~~~~^~~~~~~~~
/usr/include/ableton/discovery/Service.hpp:45:21:   required from ‘void ableton::discovery::Service<NodeState, GatewayFactory, IoContext>::enable(bool) [with NodeState = std::pair<ableton::link::NodeState, ableton::link::GhostXForm>; GatewayFactory = ableton::link::Controller<std::function<void(long unsigned int)>, std::function<void(ableton::link::Tempo)>, std::function<void(bool)>, ableton::platforms::linux_::Clock<4>, ableton::platforms::stl::Random, ableton::platforms::link_asio_1_28_0::Context<ableton::platforms::posix::ScanIpIfAddrs, ableton::util::NullLog, ableton::platforms::linux_::ThreadFactory> >::GatewayFactory; IoContext = ableton::platforms::link_asio_1_28_0::Context<ableton::platforms::posix::ScanIpIfAddrs, ableton::util::NullLog, ableton::platforms::linux_::ThreadFactory>&]’
   45 |     mGateways.enable(bEnable);
      |     ~~~~~~~~~~~~~~~~^~~~~~~~~
/usr/include/ableton/link/Controller.hpp:180:24:   required from ‘ableton::link::Controller<PeerCountCallback, TempoCallback, StartStopStateCallback, Clock, Random, IoContext>::~Controller() [with PeerCountCallback = std::function<void(long unsigned int)>; TempoCallback = std::function<void(ableton::link::Tempo)>; StartStopStateCallback = std::function<void(bool)>; Clock = ableton::platforms::linux_::Clock<4>; Random = ableton::platforms::stl::Random; IoContext = ableton::platforms::link_asio_1_28_0::Context<ableton::platforms::posix::ScanIpIfAddrs, ableton::util::NullLog, ableton::platforms::linux_::ThreadFactory>]’
  180 |       mDiscovery.enable(false);
      |       ~~~~~~~~~~~~~~~~~^~~~~~~
/usr/include/ableton/Link.hpp:78:7:   required from here
   78 | class BasicLink
      |       ^~~~~~~~~
/usr/include/ableton/platforms/asio/Context.hpp:159:20: error: no matching function for call to ‘ableton::platforms::link_asio_1_28_0::Socket<512>::Socket(<brace-enclosed initializer list>)’
  159 |       addr.is_v4() ? Socket<BufferSize>{*mpService, ::LINK_ASIO_NAMESPACE::ip::udp::v4()}
      |       ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  160 |                    : Socket<BufferSize>{*mpService, ::LINK_ASIO_NAMESPACE::ip::udp::v6()};
      |                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/ableton/platforms/asio/Context.hpp:159:20: note: there is 1 candidate
/usr/include/ableton/platforms/asio/Socket.hpp:45:3: note: candidate 1: ‘ableton::platforms::link_asio_1_28_0::Socket<MaxPacketSize>::Socket(ableton::platforms::link_asio_1_28_0::Socket<MaxPacketSize>&&) [with long unsigned int MaxPacketSize = 512]’
   45 |   Socket(Socket&& rhs)
      |   ^~~~~~
/usr/include/ableton/platforms/asio/Socket.hpp:45:3: note: candidate expects 1 argument, 2 provided
/usr/include/ableton/platforms/asio/Context.hpp:159:20: error: no matching function for call to ‘ableton::platforms::link_asio_1_28_0::Socket<512>::Socket(<brace-enclosed initializer list>)’
  159 |       addr.is_v4() ? Socket<BufferSize>{*mpService, ::LINK_ASIO_NAMESPACE::ip::udp::v4()}
      |       ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  160 |                    : Socket<BufferSize>{*mpService, ::LINK_ASIO_NAMESPACE::ip::udp::v6()};
      |                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/ableton/platforms/asio/Context.hpp:159:20: note: there is 1 candidate
/usr/include/ableton/platforms/asio/Socket.hpp:45:3: note: candidate 1: ‘ableton::platforms::link_asio_1_28_0::Socket<MaxPacketSize>::Socket(ableton::platforms::link_asio_1_28_0::Socket<MaxPacketSize>&&) [with long unsigned int MaxPacketSize = 512]’
   45 |   Socket(Socket&& rhs)
      |   ^~~~~~
/usr/include/ableton/platforms/asio/Socket.hpp:45:3: note: candidate expects 1 argument, 2 provided
/usr/include/ableton/platforms/asio/Context.hpp: In instantiation of ‘ableton::platforms::link_asio_1_28_0::Context<ScanIpIfAddrs, LogT, ThreadFactoryT>::Socket<BufferSize> ableton::platforms::link_asio_1_28_0::Context<ScanIpIfAddrs, LogT, ThreadFactoryT>::openUnicastSocket(ableton::discovery::IpAddress) [with long unsigned int BufferSize = 512; ScanIpIfAddrs = ableton::platforms::posix::ScanIpIfAddrs; LogT = ableton::util::NullLog; ThreadFactoryT = ableton::platforms::linux_::ThreadFactory; Socket<BufferSize> = ableton::platforms::link_asio_1_28_0::Socket<512>; ableton::discovery::IpAddress = link_asio_1_28_0::ip::address]’:
/usr/include/ableton/discovery/IpInterface.hpp:60:65:   required from ‘ableton::discovery::IpInterface<IoContext, MaxPacketSize>::IpInterface(ableton::util::Injected<T>, const ableton::discovery::IpAddress&) [with IoContext = ableton::platforms::link_asio_1_28_0::Context<ableton::platforms::posix::ScanIpIfAddrs, ableton::util::NullLog, ableton::platforms::linux_::ThreadFactory>&; long unsigned int MaxPacketSize = 512; ableton::discovery::IpAddress = link_asio_1_28_0::ip::address]’
   60 |     , mSendSocket(mIo->template openUnicastSocket<MaxPacketSize>(addr))
      |                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~
/usr/include/ableton/discovery/IpInterface.hpp:126:30:   required from ‘ableton::discovery::IpInterface<IoContext, MaxPacketSize> ableton::discovery::makeIpInterface(ableton::util::Injected<IoContext>, const IpAddress&) [with long unsigned int MaxPacketSize = 512; IoContext = ableton::platforms::link_asio_1_28_0::Context<ableton::platforms::posix::ScanIpIfAddrs, ableton::util::NullLog, ableton::platforms::linux_::ThreadFactory>&; IpAddress = link_asio_1_28_0::ip::address]’
  126 |   return {std::move(io), addr};
      |                              ^
/usr/include/ableton/discovery/PeerGateway.hpp:241:52:   req [too-long-redacted] link_asio_1_28_0::ip::address]’
  241 |   auto iface = makeIpInterface<v1::kMaxMessageSize>(injectRef(*io), addr);
      |                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
/usr/include/ableton/link/Gateway.hpp:47:42:   required from [too-long-redacted] link_asio_1_28_0::ip::address]’
   47 |     , mPeerGateway(discovery::makeGateway(util::injectRef(*mIo),
      |                    ~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
   48 |         std::move(addr),
      |         ~~~~~~~~~~~~~~~~
   49 |         std::move(observer),
      |         ~~~~~~~~~~~~~~~~~~~~
   50 |         PeerState{std::move(nodeState), mMeasurement.endpoint()}))
      |         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/ableton/link/Controller.hpp:738:25:   [ skipping 2 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/usr/include/ableton/discovery/InterfaceScanner.hpp:72:17:   [too-long-redacted] orms::linux_::ThreadFactory>&]’
   72 |     (*mCallback)(std::move(addrs));
      |     ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
/usr/include/ableton/discovery/InterfaceScanner.hpp:54:7:    [too-long-redacted] orms::linux_::ThreadFactory>&]’
   54 |       scan();
      |       ^~~~
/usr/include/ableton/discovery/PeerGateways.hpp:70:22:   required from ‘void ableton::discovery::PeerGateways<NodeState, GatewayFactory, IoContext>::enable(bool) [with NodeState = std::pair<ableton::link::NodeState, ableton::link::GhostXForm>; GatewayFactory = ableton::link::Controller<std::function<void(long unsigned int)>, std::function<void(ableton::link::Tempo)>, std::function<void(bool)>, ableton::platforms::linux_::Clock<4>, ableton::platforms::stl::Random, ableton::platforms::link_asio_1_28_0::Context<ableton::platforms::posix::ScanIpIfAddrs, ableton::util::NullLog, ableton::platforms::linux_::ThreadFactory> >::GatewayFactory; IoContext = ableton::platforms::link_asio_1_28_0::Context<ableton::platforms::posix::ScanIpIfAddrs, ableton::util::NullLog, ableton::platforms::linux_::ThreadFactory>&]’
   70 |     mpScanner->enable(bEnable);
      |     ~~~~~~~~~~~~~~~~~^~~~~~~~~
/usr/include/ableton/discovery/Service.hpp:45:21:   required from ‘void ableton::discovery::Service<NodeState, GatewayFactory, IoContext>::enable(bool) [with NodeState = std::pair<ableton::link::NodeState, ableton::link::GhostXForm>; GatewayFactory = ableton::link::Controller<std::function<void(long unsigned int)>, std::function<void(ableton::link::Tempo)>, std::function<void(bool)>, ableton::platforms::linux_::Clock<4>, ableton::platforms::stl::Random, ableton::platforms::link_asio_1_28_0::Context<ableton::platforms::posix::ScanIpIfAddrs, ableton::util::NullLog, ableton::platforms::linux_::ThreadFactory> >::GatewayFactory; IoContext = ableton::platforms::link_asio_1_28_0::Context<ableton::platforms::posix::ScanIpIfAddrs, ableton::util::NullLog, ableton::platforms::linux_::ThreadFactory>&]’
   45 |     mGateways.enable(bEnable);
      |     ~~~~~~~~~~~~~~~~^~~~~~~~~
/usr/include/ableton/link/Controller.hpp:180:24:   required from ‘ableton::link::Controller<PeerCountCallback, TempoCallback, StartStopStateCallback, Clock, Random, IoContext>::~Controller() [with PeerCountCallback = std::function<void(long unsigned int)>; TempoCallback = std::function<void(ableton::link::Tempo)>; StartStopStateCallback = std::function<void(bool)>; Clock = ableton::platforms::linux_::Clock<4>; Random = ableton::platforms::stl::Random; IoContext = ableton::platforms::link_asio_1_28_0::Context<ableton::platforms::posix::ScanIpIfAddrs, ableton::util::NullLog, ableton::platforms::linux_::ThreadFactory>]’
  180 |       mDiscovery.enable(false);
      |       ~~~~~~~~~~~~~~~~~^~~~~~~
/usr/include/ableton/Link.hpp:78:7:   required from here
   78 | class BasicLink
      |       ^~~~~~~~~
/usr/include/ableton/platforms/asio/Context.hpp:128:20: error: no matching function for call to ‘ableton::platforms::link_asio_1_28_0::Socket<512>::Socket(<brace-enclosed initializer list>)’
  128 |       addr.is_v4() ? Socket<BufferSize>{*mpService, ::LINK_ASIO_NAMESPACE::ip::udp::v4()}
      |       ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  129 |                    : Socket<BufferSize>{*mpService, ::LINK_ASIO_NAMESPACE::ip::udp::v6()};
      |                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/ableton/platforms/asio/Context.hpp:128:20: note: there is 1 candidate
/usr/include/ableton/platforms/asio/Socket.hpp:45:3: note: candidate 1: ‘ableton::platforms::link_asio_1_28_0::Socket<MaxPacketSize>::Socket(ableton::platforms::link_asio_1_28_0::Socket<MaxPacketSize>&&) [with long unsigned int MaxPacketSize = 512]’
   45 |   Socket(Socket&& rhs)
      |   ^~~~~~
/usr/include/ableton/platforms/asio/Socket.hpp:45:3: note: candidate expects 1 argument, 2 provided
/usr/include/ableton/platforms/asio/Context.hpp:128:20: error: no matching function for call to ‘ableton::platforms::link_asio_1_28_0::Socket<512>::Socket(<brace-enclosed initializer list>)’
  128 |       addr.is_v4() ? Socket<BufferSize>{*mpService, ::LINK_ASIO_NAMESPACE::ip::udp::v4()}
      |       ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  129 |                    : Socket<BufferSize>{*mpService, ::LINK_ASIO_NAMESPACE::ip::udp::v6()};
      |                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/ableton/platforms/asio/Context.hpp:128:20: note: there is 1 candidate
/usr/include/ableton/platforms/asio/Socket.hpp:45:3: note: candidate 1: ‘ableton::platforms::link_asio_1_28_0::Socket<MaxPacketSize>::Socket(ableton::platforms::link_asio_1_28_0::Socket<MaxPacketSize>&&) [with long unsigned int MaxPacketSize = 512]’
   45 |   Socket(Socket&& rhs)
      |   ^~~~~~
/usr/include/ableton/platforms/asio/Socket.hpp:45:3: note: candidate expects 1 argument, 2 provided
[ 81%] Building CXX object src/CMakeFiles/vimix.dir/Mixer.cpp.o
cd /<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/src && /usr/bin/x86 [too-long-redacted]  /<<PKGBUILDDIR>>/src/Mixer.cpp
make[3]: *** [src/CMakeFiles/vimix.dir/build.make:278: src/CMakeFiles/vimix.dir/Metronome.cpp.o] Error 1
make[3]: *** Waiting for unfinished jobs....
make[3]: Leaving directory '/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu'
make[2]: *** [CMakeFiles/Makefile2:252: src/CMakeFiles/vimix.dir/all] Error 2
make[2]: Leaving directory '/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu'
make[1]: *** [Makefile:159: all] Error 2
make[1]: Leaving directory '/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu'
dh_auto_build: error: cd obj-x86_64-linux-gnu && make -j2 INSTALL="install --strip-program=true" VERBOSE=1 returned exit code 2
make: *** [debian/rules:14: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess failed with exit status 2
--------------------------------------------------------------------------------

#1139494#10
Date:
2026-06-13 20:39:32 UTC
From:
To:
reassign 1139494 src:ableton-link
affects 1139494 src:vimix
found 1139494 3.1.2+dfsg-1
close 1139494 3.1.2+dfsg-2
thanks

Hello.

Sorry for the duplicates. Based on the title and the fact that the
package builds ok again, this one is almost surely the same as #1139468,
#1139462, #1139467 and #1139482, so I'm doing the reassign + close.

(I'm skipping the merge because it becomes messy at times, but feel
free to do it yourself).

Thanks.

#1139494#29
Date:
2026-06-15 10:15:13 UTC
From:
To:
merge 1139462 1139494
thanks

Hi Santiago,

Thanks for reassign + close. Some dependency problems were blocking the
investigation of this issue for me.

Sure. I will give it a shot.

Best,
Andrius