[Debian-med-packaging] Bug#925749: liblemon: ftbfs with GCC-9

Matthias Klose doko at debian.org
Wed Mar 27 19:46:22 GMT 2019


Package: src:liblemon
Version: 1.3.1+dfsg-2
Severity: normal
Tags: sid bullseye
User: debian-gcc at lists.debian.org
Usertags: ftbfs-gcc-9

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-9/g++-9, but succeeds to build with gcc-8/g++-8. The
severity of this report will be raised before the bullseye release,
so nothing has to be done for the buster release.

The full build log can be found at:
http://people.debian.org/~doko/logs/gcc9-20190321/liblemon_1.3.1+dfsg-2_unstable_gcc9.log
The last lines of the build log are at the end of this report.

To build with GCC 9, either set CC=gcc-9 CXX=g++-9 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-9/porting_to.html

GCC 9 also passes the linker option --as-needed by default; typical
build issues are passing libraries before object files to the linker,
or underlinking of convenience libraries built from the same source.

[...]
 1667 |           min = _graph.oppositeArc(a);
In file included from /<<BUILDDIR>>/liblemon-1.3.1+dfsg/test/matching_test.cc:27:
/<<BUILDDIR>>/liblemon-1.3.1+dfsg/lemon/concepts/graph.h:335:9: note: because 'lemon::concepts::Graph::Arc' has user-provided 'lemon::concepts::Graph::Arc::Arc(const lemon::concepts::Graph::Arc&)'
  335 |         Arc(const Arc&) { }
      |         ^~~
[ 71%] Linking CXX executable matching_test
cd /<<BUILDDIR>>/liblemon-1.3.1+dfsg/obj-x86_64-linux-gnu/test && /usr/bin/cmake -E cmake_link_script CMakeFiles/matching_test.dir/link.txt --verbose=1
/usr/bin/c++  -g -O2 -fdebug-prefix-map=/<<BUILDDIR>>/liblemon-1.3.1+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -W -Wunused -Wformat=2 -Wctor-dtor-privacy -Wnon-virtual-dtor -Wno-char-subscripts -Wwrite-strings -Wno-char-subscripts -Wreturn-type -Wcast-qual -Wcast-align -Wsign-promo -Woverloaded-virtual -fno-strict-aliasing -Wold-style-cast -Wno-unknown-pragmas  -Wl,-z,relro -Wl,-z,now -rdynamic CMakeFiles/matching_test.dir/matching_test.cc.o  -o matching_test  -L/<<BUILDDIR>>/liblemon-1.3.1+dfsg/obj-x86_64-linux-gnu/lemon -Wl,-rpath,/<<BUILDDIR>>/liblemon-1.3.1+dfsg/obj-x86_64-linux-gnu/lemon ../lemon/liblemon.so.1.3.1 -lglpk 
make[5]: Leaving directory '/<<BUILDDIR>>/liblemon-1.3.1+dfsg/obj-x86_64-linux-gnu'
[ 71%] Built target matching_test
make -f test/CMakeFiles/lgf_test.dir/build.make test/CMakeFiles/lgf_test.dir/depend
make[5]: Entering directory '/<<BUILDDIR>>/liblemon-1.3.1+dfsg/obj-x86_64-linux-gnu'
cd /<<BUILDDIR>>/liblemon-1.3.1+dfsg/obj-x86_64-linux-gnu && /usr/bin/cmake -E cmake_depends "Unix Makefiles" /<<BUILDDIR>>/liblemon-1.3.1+dfsg /<<BUILDDIR>>/liblemon-1.3.1+dfsg/test /<<BUILDDIR>>/liblemon-1.3.1+dfsg/obj-x86_64-linux-gnu /<<BUILDDIR>>/liblemon-1.3.1+dfsg/obj-x86_64-linux-gnu/test /<<BUILDDIR>>/liblemon-1.3.1+dfsg/obj-x86_64-linux-gnu/test/CMakeFiles/lgf_test.dir/DependInfo.cmake --color=
Scanning dependencies of target lgf_test
make[5]: Leaving directory '/<<BUILDDIR>>/liblemon-1.3.1+dfsg/obj-x86_64-linux-gnu'
make -f test/CMakeFiles/lgf_test.dir/build.make test/CMakeFiles/lgf_test.dir/build
make[5]: Entering directory '/<<BUILDDIR>>/liblemon-1.3.1+dfsg/obj-x86_64-linux-gnu'
[ 71%] Building CXX object test/CMakeFiles/lgf_test.dir/lgf_test.cc.o
cd /<<BUILDDIR>>/liblemon-1.3.1+dfsg/obj-x86_64-linux-gnu/test && /usr/bin/c++   -I/<<BUILDDIR>>/liblemon-1.3.1+dfsg -I/<<BUILDDIR>>/liblemon-1.3.1+dfsg/obj-x86_64-linux-gnu  -g -O2 -fdebug-prefix-map=/<<BUILDDIR>>/liblemon-1.3.1+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -W -Wunused -Wformat=2 -Wctor-dtor-privacy -Wnon-virtual-dtor -Wno-char-subscripts -Wwrite-strings -Wno-char-subscripts -Wreturn-type -Wcast-qual -Wcast-align -Wsign-promo -Woverloaded-virtual -fno-strict-aliasing -Wold-style-cast -Wno-unknown-pragmas   -o CMakeFiles/lgf_test.dir/lgf_test.cc.o -c /<<BUILDDIR>>/liblemon-1.3.1+dfsg/test/lgf_test.cc
[ 72%] Linking CXX executable lgf_test
cd /<<BUILDDIR>>/liblemon-1.3.1+dfsg/obj-x86_64-linux-gnu/test && /usr/bin/cmake -E cmake_link_script CMakeFiles/lgf_test.dir/link.txt --verbose=1
/usr/bin/c++  -g -O2 -fdebug-prefix-map=/<<BUILDDIR>>/liblemon-1.3.1+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -W -Wunused -Wformat=2 -Wctor-dtor-privacy -Wnon-virtual-dtor -Wno-char-subscripts -Wwrite-strings -Wno-char-subscripts -Wreturn-type -Wcast-qual -Wcast-align -Wsign-promo -Woverloaded-virtual -fno-strict-aliasing -Wold-style-cast -Wno-unknown-pragmas  -Wl,-z,relro -Wl,-z,now -rdynamic CMakeFiles/lgf_test.dir/lgf_test.cc.o  -o lgf_test  -L/<<BUILDDIR>>/liblemon-1.3.1+dfsg/obj-x86_64-linux-gnu/lemon -Wl,-rpath,/<<BUILDDIR>>/liblemon-1.3.1+dfsg/obj-x86_64-linux-gnu/lemon ../lemon/liblemon.so.1.3.1 -lglpk 
make[5]: Leaving directory '/<<BUILDDIR>>/liblemon-1.3.1+dfsg/obj-x86_64-linux-gnu'
[ 72%] Built target lgf_test
make -f test/CMakeFiles/maps_test.dir/build.make test/CMakeFiles/maps_test.dir/depend
make[5]: Entering directory '/<<BUILDDIR>>/liblemon-1.3.1+dfsg/obj-x86_64-linux-gnu'
cd /<<BUILDDIR>>/liblemon-1.3.1+dfsg/obj-x86_64-linux-gnu && /usr/bin/cmake -E cmake_depends "Unix Makefiles" /<<BUILDDIR>>/liblemon-1.3.1+dfsg /<<BUILDDIR>>/liblemon-1.3.1+dfsg/test /<<BUILDDIR>>/liblemon-1.3.1+dfsg/obj-x86_64-linux-gnu /<<BUILDDIR>>/liblemon-1.3.1+dfsg/obj-x86_64-linux-gnu/test /<<BUILDDIR>>/liblemon-1.3.1+dfsg/obj-x86_64-linux-gnu/test/CMakeFiles/maps_test.dir/DependInfo.cmake --color=
Scanning dependencies of target maps_test
make[5]: Leaving directory '/<<BUILDDIR>>/liblemon-1.3.1+dfsg/obj-x86_64-linux-gnu'
make -f test/CMakeFiles/maps_test.dir/build.make test/CMakeFiles/maps_test.dir/build
make[5]: Entering directory '/<<BUILDDIR>>/liblemon-1.3.1+dfsg/obj-x86_64-linux-gnu'
[ 73%] Building CXX object test/CMakeFiles/maps_test.dir/maps_test.cc.o
cd /<<BUILDDIR>>/liblemon-1.3.1+dfsg/obj-x86_64-linux-gnu/test && /usr/bin/c++   -I/<<BUILDDIR>>/liblemon-1.3.1+dfsg -I/<<BUILDDIR>>/liblemon-1.3.1+dfsg/obj-x86_64-linux-gnu  -g -O2 -fdebug-prefix-map=/<<BUILDDIR>>/liblemon-1.3.1+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -W -Wunused -Wformat=2 -Wctor-dtor-privacy -Wnon-virtual-dtor -Wno-char-subscripts -Wwrite-strings -Wno-char-subscripts -Wreturn-type -Wcast-qual -Wcast-align -Wsign-promo -Woverloaded-virtual -fno-strict-aliasing -Wold-style-cast -Wno-unknown-pragmas   -o CMakeFiles/maps_test.dir/maps_test.cc.o -c /<<BUILDDIR>>/liblemon-1.3.1+dfsg/test/maps_test.cc
In file included from /<<BUILDDIR>>/liblemon-1.3.1+dfsg/test/maps_test.cc:24:
/<<BUILDDIR>>/liblemon-1.3.1+dfsg/lemon/maps.h: In substitution of 'template<class K, class V, V v> lemon::ConstMap<K, lemon::Const<V, v> > lemon::constMap() [with K = A; V = B; V v = <missing>]':
/<<BUILDDIR>>/liblemon-1.3.1+dfsg/test/maps_test.cc:120:26:   required from here
/<<BUILDDIR>>/liblemon-1.3.1+dfsg/lemon/maps.h:193:36: error: non-type template parameters of class type only available with '-std=c++2a' or '-std=gnu++2a'
  193 |   inline ConstMap<K, Const<V, v> > constMap() {
      |                                    ^~~~~~~~
/<<BUILDDIR>>/liblemon-1.3.1+dfsg/lemon/maps.h: In substitution of 'template<class K, class V, V v> lemon::ConstMap<K, lemon::Const<V, v> > lemon::constMap() [with K = A; V = lemon::Const<int, 10>; V v = <missing>]':
/<<BUILDDIR>>/liblemon-1.3.1+dfsg/test/maps_test.cc:136:39:   required from here
/<<BUILDDIR>>/liblemon-1.3.1+dfsg/lemon/maps.h:193:36: error: non-type template parameters of class type only available with '-std=c++2a' or '-std=gnu++2a'
/<<BUILDDIR>>/liblemon-1.3.1+dfsg/test/maps_test.cc: In function 'int main()':
/<<BUILDDIR>>/liblemon-1.3.1+dfsg/test/maps_test.cc:162:24: warning: implicitly-declared 'lemon::RangeMap<B>::RangeMap(const lemon::RangeMap<B>&)' is deprecated [-Wdeprecated-copy]
  162 |     RangeMap<B> map4 = map1;
      |                        ^~~~
In file included from /<<BUILDDIR>>/liblemon-1.3.1+dfsg/test/maps_test.cc:24:
/<<BUILDDIR>>/liblemon-1.3.1+dfsg/lemon/maps.h:296:15: note: because 'lemon::RangeMap<B>' has user-provided 'lemon::RangeMap<V>& lemon::RangeMap<V>::operator=(const lemon::RangeMap<V>&) [with V = B]'
  296 |     RangeMap& operator=(const RangeMap&);
      |               ^~~~~~~~
/<<BUILDDIR>>/liblemon-1.3.1+dfsg/lemon/maps.h: In instantiation of 'lemon::FunctorToMap<F, K, V>::FunctorToMap(const F&) [with F = F; K = A; V = B]':
/<<BUILDDIR>>/liblemon-1.3.1+dfsg/test/maps_test.cc:234:21:   required from here
/<<BUILDDIR>>/liblemon-1.3.1+dfsg/lemon/maps.h:627:42: warning: implicitly-declared 'constexpr F::F(const F&)' is deprecated [-Wdeprecated-copy]
  627 |     FunctorToMap(const F &f = F()) : _f(f) {}
      |                                          ^
/<<BUILDDIR>>/liblemon-1.3.1+dfsg/test/maps_test.cc:66:6: note: because 'F' has user-provided 'F& F::operator=(const F&)'
   66 |   F& operator=(const F&);
      |      ^~~~~~~~
make[5]: *** [test/CMakeFiles/maps_test.dir/build.make:66: test/CMakeFiles/maps_test.dir/maps_test.cc.o] Error 1
make[5]: Leaving directory '/<<BUILDDIR>>/liblemon-1.3.1+dfsg/obj-x86_64-linux-gnu'
make[4]: *** [CMakeFiles/Makefile2:1600: test/CMakeFiles/maps_test.dir/all] Error 2
make[4]: Leaving directory '/<<BUILDDIR>>/liblemon-1.3.1+dfsg/obj-x86_64-linux-gnu'
make[3]: *** [CMakeFiles/Makefile2:158: CMakeFiles/check.dir/rule] Error 2
make[3]: Leaving directory '/<<BUILDDIR>>/liblemon-1.3.1+dfsg/obj-x86_64-linux-gnu'
make[2]: *** [Makefile:213: check] Error 2
make[2]: Leaving directory '/<<BUILDDIR>>/liblemon-1.3.1+dfsg/obj-x86_64-linux-gnu'
make[1]: *** [debian/rules:17: override_dh_auto_test] Error 2
make[1]: Leaving directory '/<<BUILDDIR>>/liblemon-1.3.1+dfsg'
make: *** [debian/rules:10: build-arch] Error 2
dpkg-buildpackage: error: debian/rules build-arch subprocess returned exit status 2



More information about the Debian-med-packaging mailing list