[Debian-med-packaging] Bug#1013061: vg: ftbfs with GCC-12

Matthias Klose doko at debian.org
Thu Jun 16 13:14:51 BST 2022


Package: src:vg
Version: 1.30.0+ds-1
Severity: normal
Tags: sid bookworm
User: debian-gcc at lists.debian.org
Usertags: ftbfs-gcc-12

[This bug is targeted to the upcoming bookworm 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-12/g++-12, but succeeds to build with gcc-11/g++-11. The
severity of this report will be raised before the bookworm release.

The full build log can be found at:
http://qa-logs.debian.net/2022/06/09/gcc12/vg_1.30.0+ds-1_unstable_gcc12.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.

[...]
/usr/include/c++/12/bits/shared_ptr.h:175:11: note: ‘class std::shared_ptr<std::pair<std::__cxx11::basic_string<char>, std::__cxx11::basic_string<char> > >’ declared here
  175 |     class shared_ptr : public __shared_ptr<_Tp>
      |           ^~~~~~~~~~
v_array.h: In instantiation of ‘void v_array<T>::resize(size_t) [with T = feature_slice; size_t = long unsigned int]’:
v_array.h:94:7:   required from ‘void v_array<T>::push_back(const T&) [with T = feature_slice]’
feature_group.h:315:24:   required from here
v_array.h:62:29: warning: ‘void* realloc(void*, size_t)’ moving an object of non-trivially copyable type ‘struct feature_slice’; use ‘new’ and ‘delete’ instead [-Wclass-memaccess]
   62 |       T* temp = (T *)realloc(_begin, sizeof(T) * length);
      |                      ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from example.h:17,
                 from global_data.h:24:
feature_group.h:26:8: note: ‘struct feature_slice’ declared here
   26 | struct feature_slice  //a helper struct for functions using the set {v,i,space_name}
      |        ^~~~~~~~~~~~~
v_array.h:68:46: warning: comparing the result of pointer addition ‘(((v_array<feature_slice>*)this)->v_array<feature_slice>::_begin + ((sizetype)(old_len * 80)))’ and NULL [-Waddress]
   68 |       if (old_len < length && _begin+old_len != nullptr)
      |                               ~~~~~~~~~~~~~~~^~~~~~~~~~
v_array.h:69:15: warning: ‘void* memset(void*, int, size_t)’ clearing an object of type ‘struct feature_slice’ with no trivial copy-assignment; use assignment or value-initialization instead [-Wclass-memaccess]
   69 |         memset(_begin+old_len, 0, (length-old_len)*sizeof(T));
      |         ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
feature_group.h:26:8: note: ‘struct feature_slice’ declared here
   26 | struct feature_slice  //a helper struct for functions using the set {v,i,space_name}
      |        ^~~~~~~~~~~~~
v_array.h: In instantiation of ‘void v_array<T>::resize(size_t) [with T = feature; size_t = long unsigned int]’:
v_array.h:94:7:   required from ‘void v_array<T>::push_back(const T&) [with T = feature]’
feature_group.h:329:24:   required from here
v_array.h:68:46: warning: comparing the result of pointer addition ‘(((v_array<feature>*)this)->v_array<feature>::_begin + ((sizetype)(old_len * 16)))’ and NULL [-Waddress]
   68 |       if (old_len < length && _begin+old_len != nullptr)
      |                               ~~~~~~~~~~~~~~~^~~~~~~~~~
v_array.h:69:15: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct feature’; use assignment or value-initialization instead [-Wclass-memaccess]
   69 |         memset(_begin+old_len, 0, (length-old_len)*sizeof(T));
      |         ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
feature_group.h:19:8: note: ‘struct feature’ declared here
   19 | struct feature  //sparse feature definition for the library interface
      |        ^~~~~~~
v_array.h: In instantiation of ‘void v_array<T>::resize(size_t) [with T = v_hashmap<substring, long unsigned int>::hash_elem; size_t = long unsigned int]’:
v_hashmap.h:57:15:   required from ‘void v_hashmap<K, V>::init(size_t, V, bool (*)(K&, K&)) [with K = substring; V = long unsigned int; size_t = long unsigned int]’
global_data.h:157:17:   required from here
v_array.h:68:46: warning: comparing the result of pointer addition ‘(((v_array<v_hashmap<substring, long unsigned int>::hash_elem>*)this)->v_array<v_hashmap<substring, long unsigned int>::hash_elem>::_begin + ((sizetype)(old_len * 40)))’ and NULL [-Waddress]
   68 |       if (old_len < length && _begin+old_len != nullptr)
      |                               ~~~~~~~~~~~~~~~^~~~~~~~~~
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -Wdate-time -D_FORTIFY_SOURCE=2 -I/include -Wall -Wno-unused-local-typedefs -pedantic -I /usr/include/rapidjson -O3 -fomit-frame-pointer -DNDEBUG -O3 -Werror=return-type -std=c++14 -ggdb -g -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -msse3 -I/usr/include/fastahack -I/usr/include/smithwaterman -I/usr/include/vcflib -I/usr/include/smithwaterman -I/usr/include/fastahack -I/<<PKGBUILDDIR>>/include -isystem /<<PKGBUILDDIR>>/include -I. -I/<<PKGBUILDDIR>>/src -I/<<PKGBUILDDIR>>/src/unittest -I/<<PKGBUILDDIR>>/src/subcommand -I/<<PKGBUILDDIR>>/include/dynamic -pthread -isystem /usr/include/cairo -isystem /usr/include/glib-2.0 -isystem /usr/lib/x86_64-linux-gnu/glib-2.0/include -isystem /usr/include/pixman-1 -isystem /usr/include/uuid -isystem /usr/include/freetype2 -isystem /usr/include/libpng16 -MT classweight.lo -MD -MP -MF .deps/classweight.Tpo -c classweight.cc -o classweight.o >/dev/null 2>&1
mv -f .deps/vw-main.Tpo .deps/vw-main.Po
/bin/bash ../libtool  --tag=CXX   --mode=link g++  -I/include  -Wall -Wno-unused-local-typedefs    -pedantic  -I /usr/include/rapidjson   -O3 -fomit-frame-pointer -DNDEBUG -O3 -Werror=return-type -std=c++14 -ggdb -g -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -msse3 -I/usr/include/fastahack -I/usr/include/smithwaterman -I/usr/include/vcflib -I/usr/include/smithwaterman -I/usr/include/fastahack -I/<<PKGBUILDDIR>>/include -isystem /<<PKGBUILDDIR>>/include -I. -I/<<PKGBUILDDIR>>/src -I/<<PKGBUILDDIR>>/src/unittest -I/<<PKGBUILDDIR>>/src/subcommand -I/<<PKGBUILDDIR>>/include/dynamic -pthread -isystem /usr/include/cairo -isystem /usr/include/glib-2.0 -isystem /usr/lib/x86_64-linux-gnu/glib-2.0/include -isystem /usr/include/pixman-1 -isystem /usr/include/uuid -isystem /usr/include/freetype2 -isystem /usr/include/libpng16  -L/<<PKGBUILDDIR>>/lib -o libvw.la -rpath /usr/local/lib hash.lo parser_helper.lo global_data.lo io_buf.lo parse_regressor.lo parse_primitives.lo unique_sort.lo cache.lo rand48.lo simple_label.lo multiclass.lo oaa.lo multilabel_oaa.lo boosting.lo ect.lo marginal.lo autolink.lo binary.lo lrq.lo cost_sensitive.lo multilabel.lo label_dictionary.lo csoaa.lo cb.lo cb_adf.lo cb_algs.lo search.lo search_meta.lo search_sequencetask.lo search_dep_parser.lo search_hooktask.lo search_multiclasstask.lo search_entityrelationtask.lo search_graph.lo parse_example.lo scorer.lo network.lo parse_args.lo accumulate.lo gd.lo learner.lo mwt.lo lda_core.lo gd_mf.lo mf.lo bfgs.lo noop.lo print.lo example.lo parser.lo loss_functions.lo sender.lo nn.lo confidence.lo bs.lo cbify.lo explore_eval.lo topk.lo stagewise_poly.lo log_multi.lo recall_tree.lo active.lo active_cover.lo cs_active.lo kernel_svm.lo best_constant.lo ftrl.lo svrg.lo lrqfa.lo interact.lo comp_io.lo interactions.lo vw_exception.lo vw_validate.lo audit_regressor.lo gen_cs_example.lo cb_explore.lo action_score.lo cb_explore_adf.lo OjaNewton.lo parse_example_json.lo baseline.lo classweight.lo liballreduce.la  -lboost_program_options -L/lib -lz -lpthread
libtool: link: g++  -fPIC -DPIC -shared -nostdlib /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/12/crtbeginS.o  .libs/hash.o .libs/parser_helper.o .libs/global_data.o .libs/io_buf.o .libs/parse_regressor.o .libs/parse_primitives.o .libs/unique_sort.o .libs/cache.o .libs/rand48.o .libs/simple_label.o .libs/multiclass.o .libs/oaa.o .libs/multilabel_oaa.o .libs/boosting.o .libs/ect.o .libs/marginal.o .libs/autolink.o .libs/binary.o .libs/lrq.o .libs/cost_sensitive.o .libs/multilabel.o .libs/label_dictionary.o .libs/csoaa.o .libs/cb.o .libs/cb_adf.o .libs/cb_algs.o .libs/search.o .libs/search_meta.o .libs/search_sequencetask.o .libs/search_dep_parser.o .libs/search_hooktask.o .libs/search_multiclasstask.o .libs/search_entityrelationtask.o .libs/search_graph.o .libs/parse_example.o .libs/scorer.o .libs/network.o .libs/parse_args.o .libs/accumulate.o .libs/gd.o .libs/learner.o .libs/mwt.o .libs/lda_core.o .libs/gd_mf.o .libs/mf.o .libs/bfgs.o .libs/noop.o .libs/print.o .libs/example.o .libs/parser.o .libs/loss_functions.o .libs/sender.o .libs/nn.o .libs/confidence.o .libs/bs.o .libs/cbify.o .libs/explore_eval.o .libs/topk.o .libs/stagewise_poly.o .libs/log_multi.o .libs/recall_tree.o .libs/active.o .libs/active_cover.o .libs/cs_active.o .libs/kernel_svm.o .libs/best_constant.o .libs/ftrl.o .libs/svrg.o .libs/lrqfa.o .libs/interact.o .libs/comp_io.o .libs/interactions.o .libs/vw_exception.o .libs/vw_validate.o .libs/audit_regressor.o .libs/gen_cs_example.o .libs/cb_explore.o .libs/action_score.o .libs/cb_explore_adf.o .libs/OjaNewton.o .libs/parse_example_json.o .libs/baseline.o .libs/classweight.o   -Wl,-rpath -Wl,/<<PKGBUILDDIR>>/deps/vowpal_wabbit/vowpalwabbit/.libs -L/<<PKGBUILDDIR>>/lib ./.libs/liballreduce.so -lboost_program_options -L/lib -lz -L/<<PKGBUILDDIR>>/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/12 -L/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L. -L/usr/lib/gcc/x86_64-linux-gnu/12/../../.. -lstdc++ -lm -lpthread -lc -lgcc_s /usr/lib/gcc/x86_64-linux-gnu/12/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crtn.o  -O3 -O3 -ggdb -g -g -O2 -fstack-protector-strong -O3 -msse3   -pthread -Wl,-soname -Wl,libvw.so.0 -o .libs/libvw.so.0.0.0
libtool: link: (cd ".libs" && rm -f "libvw.so.0" && ln -s "libvw.so.0.0.0" "libvw.so.0")
libtool: link: (cd ".libs" && rm -f "libvw.so" && ln -s "libvw.so.0.0.0" "libvw.so")
libtool: link: ar cr .libs/libvw.a  hash.o parser_helper.o global_data.o io_buf.o parse_regressor.o parse_primitives.o unique_sort.o cache.o rand48.o simple_label.o multiclass.o oaa.o multilabel_oaa.o boosting.o ect.o marginal.o autolink.o binary.o lrq.o cost_sensitive.o multilabel.o label_dictionary.o csoaa.o cb.o cb_adf.o cb_algs.o search.o search_meta.o search_sequencetask.o search_dep_parser.o search_hooktask.o search_multiclasstask.o search_entityrelationtask.o search_graph.o parse_example.o scorer.o network.o parse_args.o accumulate.o gd.o learner.o mwt.o lda_core.o gd_mf.o mf.o bfgs.o noop.o print.o example.o parser.o loss_functions.o sender.o nn.o confidence.o bs.o cbify.o explore_eval.o topk.o stagewise_poly.o log_multi.o recall_tree.o active.o active_cover.o cs_active.o kernel_svm.o best_constant.o ftrl.o svrg.o lrqfa.o interact.o comp_io.o interactions.o vw_exception.o vw_validate.o audit_regressor.o gen_cs_example.o cb_explore.o action_score.o cb_explore_adf.o OjaNewton.o parse_example_json.o baseline.o classweight.o
libtool: link: ranlib .libs/libvw.a
libtool: link: ( cd ".libs" && rm -f "libvw.la" && ln -s "../libvw.la" "libvw.la" )
/bin/bash ../libtool  --tag=CXX   --mode=link g++  -I/include  -Wall -Wno-unused-local-typedefs    -pedantic  -I /usr/include/rapidjson   -O3 -fomit-frame-pointer -DNDEBUG -O3 -Werror=return-type -std=c++14 -ggdb -g -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -msse3 -I/usr/include/fastahack -I/usr/include/smithwaterman -I/usr/include/vcflib -I/usr/include/smithwaterman -I/usr/include/fastahack -I/<<PKGBUILDDIR>>/include -isystem /<<PKGBUILDDIR>>/include -I. -I/<<PKGBUILDDIR>>/src -I/<<PKGBUILDDIR>>/src/unittest -I/<<PKGBUILDDIR>>/src/subcommand -I/<<PKGBUILDDIR>>/include/dynamic -pthread -isystem /usr/include/cairo -isystem /usr/include/glib-2.0 -isystem /usr/lib/x86_64-linux-gnu/glib-2.0/include -isystem /usr/include/pixman-1 -isystem /usr/include/uuid -isystem /usr/include/freetype2 -isystem /usr/include/libpng16  -L/<<PKGBUILDDIR>>/lib -o vw vw-main.o libvw.la liballreduce.la  -lboost_program_options -L/lib -lz -lpthread
libtool: link: g++ -I/include -Wall -Wno-unused-local-typedefs -pedantic -I /usr/include/rapidjson -O3 -fomit-frame-pointer -DNDEBUG -O3 -Werror=return-type -std=c++14 -ggdb -g -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -DSIMDE_ENABLE_OPENMP -fopenmp-simd -O3 -msse3 -I/usr/include/fastahack -I/usr/include/smithwaterman -I/usr/include/vcflib -I/usr/include/smithwaterman -I/usr/include/fastahack -I/<<PKGBUILDDIR>>/include -isystem /<<PKGBUILDDIR>>/include -I. -I/<<PKGBUILDDIR>>/src -I/<<PKGBUILDDIR>>/src/unittest -I/<<PKGBUILDDIR>>/src/subcommand -I/<<PKGBUILDDIR>>/include/dynamic -isystem /usr/include/cairo -isystem /usr/include/glib-2.0 -isystem /usr/lib/x86_64-linux-gnu/glib-2.0/include -isystem /usr/include/pixman-1 -isystem /usr/include/uuid -isystem /usr/include/freetype2 -isystem /usr/include/libpng16 -o .libs/vw vw-main.o  -L/<<PKGBUILDDIR>>/lib ./.libs/libvw.so ./.libs/liballreduce.so -lboost_program_options -L/lib -lz -lpthread -pthread
/usr/bin/ld: ./.libs/libvw.so: undefined reference to `void GD::vec_add_multipredict<sparse_parameters>(GD::multipredict_info<sparse_parameters>&, float, unsigned long)'
/usr/bin/ld: ./.libs/libvw.so: undefined reference to `void GD::vec_add_trunc_multipredict<sparse_parameters>(GD::multipredict_info<sparse_parameters>&, float, unsigned long)'
/usr/bin/ld: ./.libs/libvw.so: undefined reference to `void GD::vec_add_multipredict<dense_parameters>(GD::multipredict_info<dense_parameters>&, float, unsigned long)'
/usr/bin/ld: ./.libs/libvw.so: undefined reference to `void GD::vec_add_trunc_multipredict<dense_parameters>(GD::multipredict_info<dense_parameters>&, float, unsigned long)'
collect2: error: ld returned 1 exit status
make[5]: *** [Makefile:622: vw] Error 1
make[5]: Leaving directory '/<<PKGBUILDDIR>>/deps/vowpal_wabbit/vowpalwabbit'
make[4]: *** [Makefile:477: all] Error 2
make[4]: Leaving directory '/<<PKGBUILDDIR>>/deps/vowpal_wabbit/vowpalwabbit'
make[3]: *** [Makefile:569: all-recursive] Error 1
make[3]: Leaving directory '/<<PKGBUILDDIR>>/deps/vowpal_wabbit'
make[2]: *** [Makefile:502: lib/libvw.a] Error 2
make[2]: Leaving directory '/<<PKGBUILDDIR>>'
dh_auto_build: error: make -j8 "INSTALL=install --strip-program=true" SFX=-sse3 all test/build_graph bin/shuf returned exit code 2
make[1]: *** [debian/rules:40: override_dh_auto_build-arch] Error 25
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
make: *** [debian/rules:22: binary] Error 2
dpkg-buildpackage: error: debian/rules binary subprocess returned exit status 2



More information about the Debian-med-packaging mailing list