Bug#983988: benchmark: ftbfs with GCC-11

Matthias Klose doko at debian.org
Wed Mar 3 16:10:44 GMT 2021


Package: src:benchmark
Version: 1.5.2-2
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/benchmark_1.5.2-2_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.

[...]
Dependee "/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/src/CMakeFiles/benchmark.dir/DependInfo.cmake" is newer than depender "/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/src/CMakeFiles/benchmark.dir/depend.internal".
Dependee "/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/src/CMakeFiles/CMakeDirectoryInformation.cmake" is newer than depender "/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/src/CMakeFiles/benchmark.dir/depend.internal".
[  1%] Building CXX object test/CMakeFiles/output_test_helper.dir/output_test_helper.cc.o
cd /<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/test && /usr/bin/c++ -DHAVE_POSIX_REGEX -DHAVE_STD_REGEX -DHAVE_STEADY_CLOCK -DTEST_BENCHMARK_LIBRARY_HAS_NO_ASSERTIONS -I/<<PKGBUILDDIR>>/include -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2  -std=c++11  -Wall  -Wextra  -Wshadow  -fstrict-aliasing  -Wno-deprecated-declarations  -Wstrict-aliasing  -ffat-lto-objects -O3  -Werror  -Wno-deprecated   -UNDEBUG -o CMakeFiles/output_test_helper.dir/output_test_helper.cc.o -c /<<PKGBUILDDIR>>/test/output_test_helper.cc
Scanning dependencies of target benchmark
make[3]: Leaving directory '/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu'
make  -f src/CMakeFiles/benchmark.dir/build.make src/CMakeFiles/benchmark.dir/build
Scanning dependencies of target gtest
make[3]: Leaving directory '/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu'
make  -f third_party/googletest/build/googletest/CMakeFiles/gtest.dir/build.make third_party/googletest/build/googletest/CMakeFiles/gtest.dir/build
make[3]: Entering directory '/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu'
make[3]: Entering directory '/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu'
[  2%] Building CXX object src/CMakeFiles/benchmark.dir/benchmark_api_internal.cc.o
cd /<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/src && /usr/bin/c++ -DHAVE_POSIX_REGEX -DHAVE_STD_REGEX -DHAVE_STEADY_CLOCK -Dbenchmark_EXPORTS -I/<<PKGBUILDDIR>>/include -I/<<PKGBUILDDIR>>/src -I/<<PKGBUILDDIR>>/src/../include -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2  -std=c++11  -Wall  -Wextra  -Wshadow  -fstrict-aliasing  -Wno-deprecated-declarations  -Wstrict-aliasing  -ffat-lto-objects -O3 -DNDEBUG  -Werror  -Wno-deprecated -fPIC -o CMakeFiles/benchmark.dir/benchmark_api_internal.cc.o -c /<<PKGBUILDDIR>>/src/benchmark_api_internal.cc
[  3%] Building CXX object third_party/googletest/build/googletest/CMakeFiles/gtest.dir/src/gtest-all.cc.o
cd /<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/third_party/googletest/build/googletest && /usr/bin/c++ -DHAVE_POSIX_REGEX -DHAVE_STD_REGEX -DHAVE_STEADY_CLOCK -I/<<PKGBUILDDIR>>/include -I/usr/src/googletest/googletest/include -I/usr/src/googletest/googletest -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2  -std=c++11  -Wall  -Wextra  -Wshadow  -fstrict-aliasing  -Wno-deprecated-declarations  -Wstrict-aliasing  -ffat-lto-objects -O3 -DNDEBUG  -Werror  -Wno-deprecated -Wall -Wshadow -Wno-error=dangling-else -DGTEST_HAS_PTHREAD=1 -fexceptions -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -pthread -o CMakeFiles/gtest.dir/src/gtest-all.cc.o -c /usr/src/googletest/googletest/src/gtest-all.cc
[  4%] Building CXX object src/CMakeFiles/benchmark.dir/benchmark.cc.o
cd /<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/src && /usr/bin/c++ -DHAVE_POSIX_REGEX -DHAVE_STD_REGEX -DHAVE_STEADY_CLOCK -Dbenchmark_EXPORTS -I/<<PKGBUILDDIR>>/include -I/<<PKGBUILDDIR>>/src -I/<<PKGBUILDDIR>>/src/../include -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2  -std=c++11  -Wall  -Wextra  -Wshadow  -fstrict-aliasing  -Wno-deprecated-declarations  -Wstrict-aliasing  -ffat-lto-objects -O3 -DNDEBUG  -Werror  -Wno-deprecated -fPIC -o CMakeFiles/benchmark.dir/benchmark.cc.o -c /<<PKGBUILDDIR>>/src/benchmark.cc
[  5%] Building CXX object src/CMakeFiles/benchmark.dir/benchmark_name.cc.o
cd /<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/src && /usr/bin/c++ -DHAVE_POSIX_REGEX -DHAVE_STD_REGEX -DHAVE_STEADY_CLOCK -Dbenchmark_EXPORTS -I/<<PKGBUILDDIR>>/include -I/<<PKGBUILDDIR>>/src -I/<<PKGBUILDDIR>>/src/../include -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2  -std=c++11  -Wall  -Wextra  -Wshadow  -fstrict-aliasing  -Wno-deprecated-declarations  -Wstrict-aliasing  -ffat-lto-objects -O3 -DNDEBUG  -Werror  -Wno-deprecated -fPIC -o CMakeFiles/benchmark.dir/benchmark_name.cc.o -c /<<PKGBUILDDIR>>/src/benchmark_name.cc
[  6%] Building CXX object src/CMakeFiles/benchmark.dir/benchmark_register.cc.o
cd /<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/src && /usr/bin/c++ -DHAVE_POSIX_REGEX -DHAVE_STD_REGEX -DHAVE_STEADY_CLOCK -Dbenchmark_EXPORTS -I/<<PKGBUILDDIR>>/include -I/<<PKGBUILDDIR>>/src -I/<<PKGBUILDDIR>>/src/../include -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2  -std=c++11  -Wall  -Wextra  -Wshadow  -fstrict-aliasing  -Wno-deprecated-declarations  -Wstrict-aliasing  -ffat-lto-objects -O3 -DNDEBUG  -Werror  -Wno-deprecated -fPIC -o CMakeFiles/benchmark.dir/benchmark_register.cc.o -c /<<PKGBUILDDIR>>/src/benchmark_register.cc
In file included from /<<PKGBUILDDIR>>/src/benchmark_register.cc:15:
/<<PKGBUILDDIR>>/src/benchmark_register.h: In function ‘typename std::vector<T>::iterator benchmark::internal::AddPowers(std::vector<T>*, T, T, int)’:
/<<PKGBUILDDIR>>/src/benchmark_register.h:22:30: error: ‘numeric_limits’ is not a member of ‘std’
   22 |   static const T kmax = std::numeric_limits<T>::max();
      |                              ^~~~~~~~~~~~~~
/<<PKGBUILDDIR>>/src/benchmark_register.h:22:46: error: expected primary-expression before ‘>’ token
   22 |   static const T kmax = std::numeric_limits<T>::max();
      |                                              ^
/<<PKGBUILDDIR>>/src/benchmark_register.h:22:49: error: ‘::max’ has not been declared; did you mean ‘std::max’?
   22 |   static const T kmax = std::numeric_limits<T>::max();
      |                                                 ^~~
      |                                                 std::max
In file included from /usr/include/c++/11/algorithm:62,
                 from /<<PKGBUILDDIR>>/include/benchmark/benchmark.h:172,
                 from /<<PKGBUILDDIR>>/src/internal_macros.h:4,
                 from /<<PKGBUILDDIR>>/src/check.h:8,
                 from /<<PKGBUILDDIR>>/src/benchmark_register.h:6,
                 from /<<PKGBUILDDIR>>/src/benchmark_register.cc:15:
/usr/include/c++/11/bits/stl_algo.h:3467:5: note: ‘std::max’ declared here
 3467 |     max(initializer_list<_Tp> __l, _Compare __comp)
      |     ^~~
[  8%] Building CXX object src/CMakeFiles/benchmark.dir/benchmark_runner.cc.o
cd /<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/src && /usr/bin/c++ -DHAVE_POSIX_REGEX -DHAVE_STD_REGEX -DHAVE_STEADY_CLOCK -Dbenchmark_EXPORTS -I/<<PKGBUILDDIR>>/include -I/<<PKGBUILDDIR>>/src -I/<<PKGBUILDDIR>>/src/../include -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2  -std=c++11  -Wall  -Wextra  -Wshadow  -fstrict-aliasing  -Wno-deprecated-declarations  -Wstrict-aliasing  -ffat-lto-objects -O3 -DNDEBUG  -Werror  -Wno-deprecated -fPIC -o CMakeFiles/benchmark.dir/benchmark_runner.cc.o -c /<<PKGBUILDDIR>>/src/benchmark_runner.cc
make[3]: *** [src/CMakeFiles/benchmark.dir/build.make:124: src/CMakeFiles/benchmark.dir/benchmark_register.cc.o] Error 1
make[3]: *** Waiting for unfinished jobs....
make[3]: Leaving directory '/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu'
make[2]: *** [CMakeFiles/Makefile2:285: src/CMakeFiles/benchmark.dir/all] Error 2
make[2]: *** Waiting for unfinished jobs....
[  9%] Linking CXX static library liboutput_test_helper.a
cd /<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/test && /usr/bin/cmake -P CMakeFiles/output_test_helper.dir/cmake_clean_target.cmake
cd /<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/test && /usr/bin/cmake -E cmake_link_script CMakeFiles/output_test_helper.dir/link.txt --verbose=1
/usr/bin/gcc-ar qc liboutput_test_helper.a CMakeFiles/output_test_helper.dir/output_test_helper.cc.o
/usr/bin/gcc-ranlib liboutput_test_helper.a
make[3]: Leaving directory '/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu'
[  9%] Built target output_test_helper
[ 10%] Linking CXX static library ../../../../lib/libgtest.a
cd /<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/third_party/googletest/build/googletest && /usr/bin/cmake -P CMakeFiles/gtest.dir/cmake_clean_target.cmake
cd /<<PKGBUILDDIR>>/obj-x86_64-linux-gnu/third_party/googletest/build/googletest && /usr/bin/cmake -E cmake_link_script CMakeFiles/gtest.dir/link.txt --verbose=1
/usr/bin/gcc-ar qc ../../../../lib/libgtest.a CMakeFiles/gtest.dir/src/gtest-all.cc.o
/usr/bin/gcc-ranlib ../../../../lib/libgtest.a
make[3]: Leaving directory '/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu'
[ 10%] Built target gtest
make[2]: Leaving directory '/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu'
make[1]: *** [Makefile:163: all] Error 2
make[1]: Leaving directory '/<<PKGBUILDDIR>>/obj-x86_64-linux-gnu'
dh_auto_build: error: cd obj-x86_64-linux-gnu && make -j4 "INSTALL=install --strip-program=true" VERBOSE=1 returned exit code 2
make: *** [debian/rules:7: binary] Error 25
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2



More information about the debian-science-maintainers mailing list