Bug#984321: ring: ftbfs with GCC-11

Matthias Klose doko at debian.org
Wed Mar 3 16:17:06 GMT 2021


Package: src:ring
Version: 20210104.4.dda80df~ds1-1
Severity: normal
Tags: sid bookworm
User: debian-gcc at lists.debian.org
Usertags: ftbfs-gcc-11

[This bug is not targeted to the upcoming bullseye release]

Please keep this issue open in the bug tracker for the package it
was filed for.  If a fix in another package is required, please
file a bug for the other package (or clone), and add a block in this
package. Please keep the issue open until the package can be built in
a follow-up test rebuild.

The package fails to build in a test rebuild on at least amd64 with
gcc-11/g++-11, but succeeds to build with gcc-10/g++-10. The
severity of this report will be raised before the bookworm release,
so nothing has to be done for the bullseye release.

The full build log can be found at:
http://people.debian.org/~doko/logs/20210228/filtered/gcc11/ring_20210104.4.dda80df~ds1-1_unstable_gcc11.log
The last lines of the build log are at the end of this report.

To build with GCC 11, either set CC=gcc-11 CXX=g++-11 explicitly,
or install the gcc, g++, gfortran, ... packages from experimental.

  apt-get -t=experimental install g++ 

Common build failures are new warnings resulting in build failures with
-Werror turned on, or new/dropped symbols in Debian symbols files.
For other C/C++ related build failures see the porting guide at
http://gcc.gnu.org/gcc-11/porting_to.html

GCC 11 defaults to the GNU++17 standard.  If your package installs
header files in /usr/include, please don't work around C++17 issues
by choosing a lower C++ standard for the package build, but fix these
issues to build with the C++17 standard.

[...]
  849 |       static_assert(std::__is_complete_or_unbounded(__type_identity<_Tp>{}),
      |                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/11/type_traits:849:52: note: ‘std::__is_complete_or_unbounded<std::__type_identity<jami::tls::DhParams> >((std::__type_identity<jami::tls::DhParams>{}, std::__type_identity<jami::tls::DhParams>()))’ evaluates to false
In file included from /<<PKGBUILDDIR>>/daemon/src/media/audio/audio_input.h:25,
                 from /<<PKGBUILDDIR>>/daemon/src/conference.h:33,
                 from /<<PKGBUILDDIR>>/daemon/src/call.h:34,
                 from /<<PKGBUILDDIR>>/daemon/src/call_factory.h:24,
                 from /<<PKGBUILDDIR>>/daemon/src/manager.h:35,
                 from configurationmanager.cpp:31:
/usr/include/c++/11/future: In instantiation of ‘class std::shared_future<jami::tls::DhParams>’:
/<<PKGBUILDDIR>>/daemon/src/security/tls_session.h:76:34:   required from here
/usr/include/c++/11/future:906:21: error: static assertion failed: result type must be destructible
  906 |       static_assert(is_destructible<_Res>{},
      |                     ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/11/future:906:21: note: ‘std::is_destructible<jami::tls::DhParams>{}’ evaluates to false
/usr/include/c++/11/future: In instantiation of ‘class std::future<jami::tls::DhParams>’:
/<<PKGBUILDDIR>>/daemon/src/jamidht/jamiaccount.h:379:71:   required from here
/usr/include/c++/11/future:769:21: error: static assertion failed: result type must be destructible
  769 |       static_assert(is_destructible<_Res>{},
      |                     ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/11/future:769:21: note: ‘std::is_destructible<jami::tls::DhParams>{}’ evaluates to false
mv -f .deps/libclient_la-callmanager.Tpo .deps/libclient_la-callmanager.Plo
../../doltlibtool  --tag=CXX   --mode=compile g++ -std=gnu++17 -DHAVE_CONFIG_H -I. -I../..  -I/<<PKGBUILDDIR>>/daemon/src -I/<<PKGBUILDDIR>>/daemon/src/config -I/<<PKGBUILDDIR>>/daemon/src/media -I/<<PKGBUILDDIR>>/daemon/test -I/<<PKGBUILDDIR>>/daemon/src/dring  -DPREFIX=\"/usr\" -DPROGSHAREDIR=\"/usr/share/ring\" -DENABLE_TRACE -DRING_REVISION=\"\" -DRING_DIRTY_REPO=\"dirty\" -DPJSIP_MAX_PKT_LEN=8000 -DPJ_AUTOCONF=1 -Wdate-time -D_FORTIFY_SOURCE=2 -fvisibility=hidden -DDRING_BUILD  -DASIO_STANDALONE -I/<<PKGBUILDDIR>>/daemon/contrib/x86_64-linux-gnu/include -I/usr/include/jsoncpp -I./ -I../ -DPREFIX=\"/usr\" -DPROGSHAREDIR=\"/usr/share/ring\" -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DNDEBUG=1 -O3 -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DPJ_AUTOCONF=1  -I/<<PKGBUILDDIR>>/daemon/contrib/x86_64-linux-gnu/include -MT libclient_la-presencemanager.lo -MD -MP -MF .deps/libclient_la-presencemanager.Tpo -c -o libclient_la-presencemanager.lo `test -f 'presencemanager.cpp' || echo './'`presencemanager.cpp
make[5]: *** [Makefile:559: libclient_la-configurationmanager.lo] Error 1
make[5]: *** Waiting for unfinished jobs....
In file included from /usr/include/c++/11/bits/move.h:57,
                 from /usr/include/c++/11/bits/stl_pair.h:59,
                 from /usr/include/c++/11/bits/stl_algobase.h:64,
                 from /usr/include/c++/11/vector:60,
                 from /<<PKGBUILDDIR>>/daemon/src/dring/presencemanager_interface.h:26,
                 from presencemanager.cpp:27:
/usr/include/c++/11/type_traits: In instantiation of ‘struct std::is_destructible<jami::tls::DhParams>’:
/usr/include/c++/11/future:906:21:   required from ‘class std::shared_future<jami::tls::DhParams>’
/<<PKGBUILDDIR>>/daemon/src/security/tls_session.h:76:34:   required from here
/usr/include/c++/11/type_traits:849:52: error: static assertion failed: template argument must be a complete class or an unbounded array
  849 |       static_assert(std::__is_complete_or_unbounded(__type_identity<_Tp>{}),
      |                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/11/type_traits:849:52: note: ‘std::__is_complete_or_unbounded<std::__type_identity<jami::tls::DhParams> >((std::__type_identity<jami::tls::DhParams>{}, std::__type_identity<jami::tls::DhParams>()))’ evaluates to false
In file included from /<<PKGBUILDDIR>>/daemon/src/media/audio/audio_input.h:25,
                 from /<<PKGBUILDDIR>>/daemon/src/conference.h:33,
                 from /<<PKGBUILDDIR>>/daemon/src/call.h:34,
                 from /<<PKGBUILDDIR>>/daemon/src/call_factory.h:24,
                 from /<<PKGBUILDDIR>>/daemon/src/manager.h:35,
                 from presencemanager.cpp:34:
/usr/include/c++/11/future: In instantiation of ‘class std::shared_future<jami::tls::DhParams>’:
/<<PKGBUILDDIR>>/daemon/src/security/tls_session.h:76:34:   required from here
/usr/include/c++/11/future:906:21: error: static assertion failed: result type must be destructible
  906 |       static_assert(is_destructible<_Res>{},
      |                     ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/11/future:906:21: note: ‘std::is_destructible<jami::tls::DhParams>{}’ evaluates to false
/usr/include/c++/11/future: In instantiation of ‘class std::future<jami::tls::DhParams>’:
/<<PKGBUILDDIR>>/daemon/src/jamidht/jamiaccount.h:379:71:   required from here
/usr/include/c++/11/future:769:21: error: static assertion failed: result type must be destructible
  769 |       static_assert(is_destructible<_Res>{},
      |                     ^~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c++/11/future:769:21: note: ‘std::is_destructible<jami::tls::DhParams>{}’ evaluates to false
make[5]: *** [Makefile:580: libclient_la-presencemanager.lo] Error 1
mv -f .deps/libclient_la-ring_signal.Tpo .deps/libclient_la-ring_signal.Plo
mv -f .deps/libclient_la-plugin_manager_interface.Tpo .deps/libclient_la-plugin_manager_interface.Plo
make[5]: Leaving directory '/<<PKGBUILDDIR>>/daemon/src/client'
make[4]: *** [Makefile:1029: all-recursive] Error 1
make[4]: Leaving directory '/<<PKGBUILDDIR>>/daemon/src'
make[3]: *** [Makefile:533: all-recursive] Error 1
make[3]: Leaving directory '/<<PKGBUILDDIR>>/daemon'
make[2]: *** [Makefile:464: all] Error 2
make[2]: Leaving directory '/<<PKGBUILDDIR>>/daemon'
make[1]: *** [debian/rules:109: override_dh_auto_build] Error 2
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
make: *** [debian/rules:20: binary] Error 2
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2



More information about the Pkg-voip-maintainers mailing list