Gcc 12 и libffado-2.4.7

Такое ощущение, что библиотека не совместима с gcc 12 на уровне кода. Вот фрагмент:

/usr/lib/gcc/x86_64-pc-linux-gnu/12/include/g++-v12/iomanip:143:5: note:   template argument deduction/substitution failed:
/usr/include/dbus-c++-1/dbus-c++/types.h:407:9: note:   ‘DBus::MessageIter’ is not derived from ‘std::basic_ostream<_CharT, _Traits>’
  407 |     ait << *vit;
      |     ~~~~^~~~~~~
/usr/lib/gcc/x86_64-pc-linux-gnu/12/include/g++-v12/iomanip:178:5: note: candidate: ‘template<class _CharT, class _Traits> std::basic_ostream<_CharT, _Traits>& std::operator<<(basic_ostream<_CharT, _Traits>&, _Setfill<_CharT>)’
  178 |     operator<<(basic_ostream<_CharT, _Traits>& __os, _Setfill<_CharT> __f)
      |     ^~~~~~~~
/usr/lib/gcc/x86_64-pc-linux-gnu/12/include/g++-v12/iomanip:178:5: note:   template argument deduction/substitution failed:
/usr/include/dbus-c++-1/dbus-c++/types.h:407:9: note:   ‘DBus::MessageIter’ is not derived from ‘std::basic_ostream<_CharT, _Traits>’
  407 |     ait << *vit;
      |     ~~~~^~~~~~~
/usr/lib/gcc/x86_64-pc-linux-gnu/12/include/g++-v12/iomanip:208:5: note: candidate: ‘template<class _CharT, class _Traits> std::basic_ostream<_CharT, _Traits>& std::operator<<(basic_ostream<_CharT, _Traits>&, _Setprecision)’
  208 |     operator<<(basic_ostream<_CharT, _Traits>& __os, _Setprecision __f)
      |     ^~~~~~~~
/usr/lib/gcc/x86_64-pc-linux-gnu/12/include/g++-v12/iomanip:208:5: note:   template argument deduction/substitution failed:
/usr/include/dbus-c++-1/dbus-c++/types.h:407:9: note:   ‘DBus::MessageIter’ is not derived from ‘std::basic_ostream<_CharT, _Traits>’
  407 |     ait << *vit;
      |     ~~~~^~~~~~~
/usr/lib/gcc/x86_64-pc-linux-gnu/12/include/g++-v12/iomanip:238:5: note: candidate: ‘template<class _CharT, class _Traits> std::basic_ostream<_CharT, _Traits>& std::operator<<(basic_ostream<_CharT, _Traits>&, _Setw)’
  238 |     operator<<(basic_ostream<_CharT, _Traits>& __os, _Setw __f)
      |     ^~~~~~~~
/usr/lib/gcc/x86_64-pc-linux-gnu/12/include/g++-v12/iomanip:238:5: note:   template argument deduction/substitution failed:
/usr/include/dbus-c++-1/dbus-c++/types.h:407:9: note:   ‘DBus::MessageIter’ is not derived from ‘std::basic_ostream<_CharT, _Traits>’
  407 |     ait << *vit;
      |     ~~~~^~~~~~~
/usr/lib/gcc/x86_64-pc-linux-gnu/12/include/g++-v12/iomanip:311:5: note: candidate: ‘template<class _CharT, class _Traits, class _MoneyT> std::basic_ostream<_CharT, _Traits>& std::operator<<(basic_ostream<_CharT, _Traits>&, _Put_money<_MoneyT>)’
  311 |     operator<<(basic_ostream<_CharT, _Traits>& __os, _Put_money<_MoneyT> __f)
      |     ^~~~~~~~
/usr/lib/gcc/x86_64-pc-linux-gnu/12/include/g++-v12/iomanip:311:5: note:   template argument deduction/substitution failed:
/usr/include/dbus-c++-1/dbus-c++/types.h:407:9: note:   ‘DBus::MessageIter’ is not derived from ‘std::basic_ostream<_CharT, _Traits>’
  407 |     ait << *vit;
      |     ~~~~^~~~~~~
/usr/lib/gcc/x86_64-pc-linux-gnu/12/include/g++-v12/iomanip:363:5: note: candidate: ‘template<class _CharT, class _Traits> std::basic_ostream<_CharT, _Traits>& std::operator<<(basic_ostream<_CharT, _Traits>&, _Put_time<_CharT>)’
  363 |     operator<<(basic_ostream<_CharT, _Traits>& __os, _Put_time<_CharT> __f)
      |     ^~~~~~~~
/usr/lib/gcc/x86_64-pc-linux-gnu/12/include/g++-v12/iomanip:363:5: note:   template argument deduction/substitution failed:
/usr/include/dbus-c++-1/dbus-c++/types.h:407:9: note:   ‘DBus::MessageIter’ is not derived from ‘std::basic_ostream<_CharT, _Traits>’
  407 |     ait << *vit;
      |     ~~~~^~~~~~~
/usr/include/dbus-c++-1/dbus-c++/types.h:321:27: note: candidate: ‘DBus::MessageIter& operator<<(DBus::MessageIter&, const DBus::Invalid&)’
  321 | inline DBus::MessageIter &operator << (DBus::MessageIter &iter, const DBus::Invalid &)
      |                           ^~~~~~~~
/usr/include/dbus-c++-1/dbus-c++/types.h:321:65: note:   no known conversion for argument 2 from ‘const DBus::Struct<std::__cxx11::basic_string<char>, double>’ to ‘const DBus::Invalid&’
  321 | inline DBus::MessageIter &operator << (DBus::MessageIter &iter, const DBus::Invalid &)
      |                                                                 ^~~~~~~~~~~~~~~~~~~~~
/usr/include/dbus-c++-1/dbus-c++/types.h:326:27: note: candidate: ‘DBus::MessageIter& operator<<(DBus::MessageIter&, const uint8_t&)’
  326 | inline DBus::MessageIter &operator << (DBus::MessageIter &iter, const uint8_t &val)
      |                           ^~~~~~~~
/usr/include/dbus-c++-1/dbus-c++/types.h:326:80: note:   no known conversion for argument 2 from ‘const DBus::Struct<std::__cxx11::basic_string<char>, double>’ to ‘const uint8_t&’ {aka ‘const unsigned char&’}
  326 | inline DBus::MessageIter &operator << (DBus::MessageIter &iter, const uint8_t &val)
      |                                                                 ~~~~~~~~~~~~~~~^~~
/usr/include/dbus-c++-1/dbus-c++/types.h:332:27: note: candidate: ‘DBus::MessageIter& operator<<(DBus::MessageIter&, const bool&)’
  332 | inline DBus::MessageIter &operator << (DBus::MessageIter &iter, const bool &val)
      |                           ^~~~~~~~
/usr/include/dbus-c++-1/dbus-c++/types.h:332:77: note:   no known conversion for argument 2 from ‘const DBus::Struct<std::__cxx11::basic_string<char>, double>’ to ‘const bool&’
  332 | inline DBus::MessageIter &operator << (DBus::MessageIter &iter, const bool &val)
      |                                                                 ~~~~~~~~~~~~^~~
/usr/include/dbus-c++-1/dbus-c++/types.h:338:27: note: candidate: ‘DBus::MessageIter& operator<<(DBus::MessageIter&, const int16_t&)’
  338 | inline DBus::MessageIter &operator << (DBus::MessageIter &iter, const int16_t &val)
      |                           ^~~~~~~~
/usr/include/dbus-c++-1/dbus-c++/types.h:338:80: note:   no known conversion for argument 2 from ‘const DBus::Struct<std::__cxx11::basic_string<char>, double>’ to ‘const int16_t&’ {aka ‘const short int&’}
  338 | inline DBus::MessageIter &operator << (DBus::MessageIter &iter, const int16_t &val)
      |                                                                 ~~~~~~~~~~~~~~~^~~
/usr/include/dbus-c++-1/dbus-c++/types.h:344:27: note: candidate: ‘DBus::MessageIter& operator<<(DBus::MessageIter&, const uint16_t&)’
  344 | inline DBus::MessageIter &operator << (DBus::MessageIter &iter, const uint16_t &val)
      |                           ^~~~~~~~
/usr/include/dbus-c++-1/dbus-c++/types.h:344:81: note:   no known conversion for argument 2 from ‘const DBus::Struct<std::__cxx11::basic_string<char>, double>’ to ‘const uint16_t&’ {aka ‘const short unsigned int&’}
  344 | inline DBus::MessageIter &operator << (DBus::MessageIter &iter, const uint16_t &val)
      |                                                                 ~~~~~~~~~~~~~~~~^~~
/usr/include/dbus-c++-1/dbus-c++/types.h:350:27: note: candidate: ‘DBus::MessageIter& operator<<(DBus::MessageIter&, const int32_t&)’
  350 | inline DBus::MessageIter &operator << (DBus::MessageIter &iter, const int32_t &val)
      |                           ^~~~~~~~
/usr/include/dbus-c++-1/dbus-c++/types.h:350:80: note:   no known conversion for argument 2 from ‘const DBus::Struct<std::__cxx11::basic_string<char>, double>’ to ‘const int32_t&’ {aka ‘const int&’}
  350 | inline DBus::MessageIter &operator << (DBus::MessageIter &iter, const int32_t &val)
      |                                                                 ~~~~~~~~~~~~~~~^~~
/usr/include/dbus-c++-1/dbus-c++/types.h:356:27: note: candidate: ‘DBus::MessageIter& operator<<(DBus::MessageIter&, const uint32_t&)’
  356 | inline DBus::MessageIter &operator << (DBus::MessageIter &iter, const uint32_t &val)
      |                           ^~~~~~~~
/usr/include/dbus-c++-1/dbus-c++/types.h:356:81: note:   no known conversion for argument 2 from ‘const DBus::Struct<std::__cxx11::basic_string<char>, double>’ to ‘const uint32_t&’ {aka ‘const unsigned int&’}
  356 | inline DBus::MessageIter &operator << (DBus::MessageIter &iter, const uint32_t &val)
      |                                                                 ~~~~~~~~~~~~~~~~^~~
/usr/include/dbus-c++-1/dbus-c++/types.h:362:27: note: candidate: ‘DBus::MessageIter& operator<<(DBus::MessageIter&, const int64_t&)’
  362 | inline DBus::MessageIter &operator << (DBus::MessageIter &iter, const int64_t &val)
      |                           ^~~~~~~~
/usr/include/dbus-c++-1/dbus-c++/types.h:362:80: note:   no known conversion for argument 2 from ‘const DBus::Struct<std::__cxx11::basic_string<char>, double>’ to ‘const int64_t&’ {aka ‘const long int&’}
  362 | inline DBus::MessageIter &operator << (DBus::MessageIter &iter, const int64_t &val)
      |                                                                 ~~~~~~~~~~~~~~~^~~
/usr/include/dbus-c++-1/dbus-c++/types.h:368:27: note: candidate: ‘DBus::MessageIter& operator<<(DBus::MessageIter&, const uint64_t&)’
  368 | inline DBus::MessageIter &operator << (DBus::MessageIter &iter, const uint64_t &val)
      |                           ^~~~~~~~
/usr/include/dbus-c++-1/dbus-c++/types.h:368:81: note:   no known conversion for argument 2 from ‘const DBus::Struct<std::__cxx11::basic_string<char>, double>’ to ‘const uint64_t&’ {aka ‘const long unsigned int&’}
  368 | inline DBus::MessageIter &operator << (DBus::MessageIter &iter, const uint64_t &val)
      |                                                                 ~~~~~~~~~~~~~~~~^~~
/usr/include/dbus-c++-1/dbus-c++/types.h:374:27: note: candidate: ‘DBus::MessageIter& operator<<(DBus::MessageIter&, const double&)’
  374 | inline DBus::MessageIter &operator << (DBus::MessageIter &iter, const double &val)
      |                           ^~~~~~~~
/usr/include/dbus-c++-1/dbus-c++/types.h:374:79: note:   no known conversion for argument 2 from ‘const DBus::Struct<std::__cxx11::basic_string<char>, double>’ to ‘const double&’
  374 | inline DBus::MessageIter &operator << (DBus::MessageIter &iter, const double &val)
      |                                                                 ~~~~~~~~~~~~~~^~~
/usr/include/dbus-c++-1/dbus-c++/types.h:380:27: note: candidate: ‘DBus::MessageIter& operator<<(DBus::MessageIter&, const std::string&)’
  380 | inline DBus::MessageIter &operator << (DBus::MessageIter &iter, const std::string &val)
      |                           ^~~~~~~~
/usr/include/dbus-c++-1/dbus-c++/types.h:380:84: note:   no known conversion for argument 2 from ‘const DBus::Struct<std::__cxx11::basic_string<char>, double>’ to ‘const std::string&’ {aka ‘const std::__cxx11::basic_string<char>&’}
  380 | inline DBus::MessageIter &operator << (DBus::MessageIter &iter, const std::string &val)
      |                                                                 ~~~~~~~~~~~~~~~~~~~^~~
/usr/include/dbus-c++-1/dbus-c++/types.h:386:27: note: candidate: ‘DBus::MessageIter& operator<<(DBus::MessageIter&, const DBus::Path&)’
  386 | inline DBus::MessageIter &operator << (DBus::MessageIter &iter, const DBus::Path &val)
      |                           ^~~~~~~~
/usr/include/dbus-c++-1/dbus-c++/types.h:386:83: note:   no known conversion for argument 2 from ‘const DBus::Struct<std::__cxx11::basic_string<char>, double>’ to ‘const DBus::Path&’
  386 | inline DBus::MessageIter &operator << (DBus::MessageIter &iter, const DBus::Path &val)
      |                                                                 ~~~~~~~~~~~~~~~~~~^~~
/usr/include/dbus-c++-1/dbus-c++/types.h:392:27: note: candidate: ‘DBus::MessageIter& operator<<(DBus::MessageIter&, const DBus::Signature&)’
  392 | inline DBus::MessageIter &operator << (DBus::MessageIter &iter, const DBus::Signature &val)
      |                           ^~~~~~~~
/usr/include/dbus-c++-1/dbus-c++/types.h:392:88: note:   no known conversion for argument 2 from ‘const DBus::Struct<std::__cxx11::basic_string<char>, double>’ to ‘const DBus::Signature&’
  392 | inline DBus::MessageIter &operator << (DBus::MessageIter &iter, const DBus::Signature &val)
      |                                                                 ~~~~~~~~~~~~~~~~~~~~~~~^~~
scons: *** [support/dbus/ffado-dbus-server.o] Error 1
scons: building terminated because of errors.
 * ERROR: media-libs/libffado-2.4.7::gentoo failed (compile phase):
 *   escons failed.
 * 
 * Call stack:
 *     ebuild.sh, line  136:  Called src_compile
 *   environment, line 3263:  Called multilib-minimal_src_compile
 *   environment, line 2123:  Called multilib_foreach_abi 'multilib-minimal_abi_src_compile'
 *   environment, line 2390:  Called multibuild_foreach_variant '_multilib_multibuild_wrapper' 'multilib-minimal_abi_src_compile'
 *   environment, line 2083:  Called _multibuild_run '_multilib_multibuild_wrapper' 'multilib-minimal_abi_src_compile'
 *   environment, line 2081:  Called _multilib_multibuild_wrapper 'multilib-minimal_abi_src_compile'
 *   environment, line  588:  Called multilib-minimal_abi_src_compile
 *   environment, line 2117:  Called multilib_src_compile
 *   environment, line 2611:  Called myescons
 *   environment, line 2681:  Called escons 'PREFIX=/usr' 'LIBDIR=/usr/lib64' 'MANDIR=/usr/share/man' 'UDEVDIR=/lib/udev/rules.d' 'CUSTOM_ENV=true' 'DETECT_USERSPACE_ENV=false' 'DEBUG=no' 'PYPKGDIR=/usr/lib/python3.10/site-packages' 'ENABLE_OPTIMIZATIONS=false' 'ENABLE_SETBUFFERSIZE_API_VER=force' 'BUILD_MIXER=false' 'BUILD_TESTS=no'
 *   environment, line 1325:  Called die
 * The specific snippet of code:
 *       "${@}" || die -n "escons failed."