Adrian Bunk <b...@debian.org> 于 2020年6月9日周二 下午11:18写道:
> Source: mlpack > Version: 3.3.1-1 > Severity: serious > Tags: ftbfs > > It seems Boost 1.67 -> 1.71 increased something: > > > https://buildd.debian.org/status/fetch.php?pkg=mlpack&arch=mips64el&ver=3.3.1-1%2Bb1&stamp=1591444281&raw=0 > > ... > /usr/bin/c++ -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. > -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time > -D_FORTIFY_SOURCE=2 -Wall -Wextra -ftemplate-depth=1000 > -Wno-unused-function -O3 -fopenmp -Wl,-z,relro -Wl,-z,now -rdynamic > CMakeFiles/mlpack_cf.dir/cf_main.cpp.o -o ../../../../bin/mlpack_cf > -Wl,-rpath,/<<PKGBUILDDIR>>/obj-mips64el-linux-gnuabi64/lib: > ../../../../lib/libmlpack.so.3.3 /usr/lib/libarmadillo.so > /usr/lib/mips64el-linux-gnuabi64/libboost_program_options.so > /usr/lib/mips64el-linux-gnuabi64/libboost_unit_test_framework.so > /usr/lib/mips64el-linux-gnuabi64/libboost_serialization.so -lpthread > CMakeFiles/mlpack_cf.dir/cf_main.cpp.o: in function > `std::basic_ostream<char, std::char_traits<char> >& std::operator<< <char, > std::char_traits<char>, std::allocator<char> >(std::basic_ostream<char, > std::char_traits<char> >&, std::__cxx11::basic_string<char, > std::char_traits<char>, std::allocator<char> > const&)': > /usr/include/c++/9/bits/basic_string.h:6421:(.text+0x300): relocation > truncated to fit: R_MIPS_CALL16 against `std::basic_ostream<char, > std::char_traits<char> >& std::__ostream_insert<char, > std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> > >&, char const*, long)@@GLIBCXX_3.4.9' > CMakeFiles/mlpack_cf.dir/cf_main.cpp.o: in function `void > std::__cxx11::basic_string<char, std::char_traits<char>, > std::allocator<char> >::_M_construct<char*>(char*, char*, > std::forward_iterator_tag)': > /usr/include/c++/9/bits/basic_string.tcc:219:(.text+0x760): relocation > truncated to fit: R_MIPS_CALL16 against `std::__cxx11::basic_string<char, > std::char_traits<char>, std::allocator<char> >::_M_create(unsigned long&, > unsigned long)@@GLIBCXX_3.4.21' > /usr/include/c++/9/bits/basic_string.tcc:233:(.text+0x7c0): relocation > truncated to fit: R_MIPS_CALL16 against `__stack_chk_fail@@GLIBC_2.4' > /usr/include/c++/9/bits/basic_string.tcc:212:(.text+0x7d0): relocation > truncated to fit: R_MIPS_CALL16 against `std::__throw_logic_error(char > const*)@@GLIBCXX_3.4' > CMakeFiles/mlpack_cf.dir/cf_main.cpp.o: in function > `__gnu_cxx::new_allocator<std::__cxx11::basic_string<char, > std::char_traits<char>, std::allocator<char> > >::allocate(unsigned long, > void const*)': > /usr/include/c++/9/ext/new_allocator.h:114:(.text+0xb34): relocation > truncated to fit: R_MIPS_CALL16 against `operator new(unsigned > long)@@GLIBCXX_3.4' > CMakeFiles/mlpack_cf.dir/cf_main.cpp.o: in function > `std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, > std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, > std::char_traits<char>, std::allocator<char> > > > >::_S_check_init_len(unsigned long, > std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, > std::allocator<char> > > const&)': > /usr/include/c++/9/bits/stl_vector.h:1767:(.text+0xbc4): relocation > truncated to fit: R_MIPS_CALL16 against `std::__throw_length_error(char > const*)@@GLIBCXX_3.4' > CMakeFiles/mlpack_cf.dir/cf_main.cpp.o: in function > `std::__cxx11::basic_string<char, std::char_traits<char>, > std::allocator<char> >* > std::__uninitialized_copy<false>::__uninit_copy<std::__cxx11::basic_string<char, > std::char_traits<char>, std::allocator<char> > const*, > std::__cxx11::basic_string<char, std::char_traits<char>, > std::allocator<char> >*>(std::__cxx11::basic_string<char, > std::char_traits<char>, std::allocator<char> > const*, > std::__cxx11::basic_string<char, std::char_traits<char>, > std::allocator<char> > const*, std::__cxx11::basic_string<char, > std::char_traits<char>, std::allocator<char> >*)': > /usr/include/c++/9/bits/stl_uninitialized.h:86:(.text+0xbd0): relocation > truncated to fit: R_MIPS_CALL16 against `__cxa_begin_catch@@CXXABI_1.3' > CMakeFiles/mlpack_cf.dir/cf_main.cpp.o: in function `void > std::_Destroy_aux<false>::__destroy<std::__cxx11::basic_string<char, > std::char_traits<char>, std::allocator<char> > >*>(std::__cxx11::basic_string<char, std::char_traits<char>, > std::allocator<char> >*, std::__cxx11::basic_string<char, > std::char_traits<char>, std::allocator<char> >*)': > /usr/include/c++/9/bits/stl_construct.h:107:(.text+0xbe0): relocation > truncated to fit: R_MIPS_CALL16 against `__cxa_rethrow@@CXXABI_1.3' > CMakeFiles/mlpack_cf.dir/cf_main.cpp.o: in function > `std::_Vector_base<std::__cxx11::basic_string<char, std::char_traits<char>, > std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, > std::char_traits<char>, std::allocator<char> > > > >::_M_deallocate(std::__cxx11::basic_string<char, std::char_traits<char>, > std::allocator<char> >*, unsigned long)': > /usr/include/c++/9/bits/stl_vector.h:350:(.text+0xbf8): relocation > truncated to fit: R_MIPS_CALL16 against `operator > delete(void*)@@GLIBCXX_3.4' > CMakeFiles/mlpack_cf.dir/cf_main.cpp.o: in function > `__gnu_cxx::new_allocator<std::__cxx11::basic_string<char, > std::char_traits<char>, std::allocator<char> > >::~new_allocator()': > /usr/include/c++/9/ext/new_allocator.h:89:(.text+0xc04): relocation > truncated to fit: R_MIPS_CALL16 against `_Unwind_Resume@@GCC_3.0' > CMakeFiles/mlpack_cf.dir/cf_main.cpp.o: in function > `std::__cxx11::basic_string<char, std::char_traits<char>, > std::allocator<char> >::_M_dispose()': > /usr/include/c++/9/bits/basic_string.h:231:(.text+0xc1c): additional > relocation overflows omitted from the output > just add -mxgot to cxxflags. there are 2 type of GOT in mips: one use fewer insn while has a length limitaion; another uses more insns while has a big address space support. collect2: error: ld returned 1 exit status > make[4]: *** > [src/mlpack/methods/cf/CMakeFiles/mlpack_cf.dir/build.make:92: > bin/mlpack_cf] Error 1 > > > I tried "export DEB_CXXFLAGS_MAINT_APPEND += -mxgot" which gave me: > > ... > /usr/bin/c++ -g -O2 -fdebug-prefix-map=/home/bunk/build/mlpack-3.3.1=. > -fstack-protector-strong -Wformat -Werror=format-security -mxgot > -Wdate-time -D_FORTIFY_SOURCE=2 -Wall -Wextra -ftemplate-depth=1000 > -Wno-unused-function -O3 -fopenmp -Wl,-z,relro -Wl,-z,now -rdynamic > CMakeFiles/mlpack_cf.dir/cf_main.cpp.o -o ../../../../bin/mlpack_cf > -Wl,-rpath,/home/bunk/build/mlpack-3.3.1/obj-mips64el-linux-gnuabi64/lib: > ../../../../lib/libmlpack.so.3.3 /usr/lib/libarmadillo.so > /usr/lib/mips64el-linux-gnuabi64/libboost_program_options.so > /usr/lib/mips64el-linux-gnuabi64/libboost_unit_test_framework.so > /usr/lib/mips64el-linux-gnuabi64/libboost_serialization.so -lpthread > CMakeFiles/mlpack_cf.dir/cf_main.cpp.o: in function > `std::mersenne_twister_engine<unsigned long, 64ul, 312ul, 156ul, 31ul, > 13043109905998158313ul, 29ul, 6148914691236517205ul, 17ul, > 8202884508482404352ul, 37ul, 18444473444759240704ul, 43ul, > 6364136223846793005ul>::seed(unsigned long)': > /usr/include/c++/9/bits/random.tcc:329:(.text._ZN6mlpack4math10RandomSeedEm[_ZN6mlpack4math10RandomSeedEm]+0xb8): > relocation truncated to fit: R_MIPS_TLS_GOTTPREL against > `arma::arma_rng_cxx11_instance' > CMakeFiles/mlpack_cf.dir/cf_main.cpp.o: in function > `std::mersenne_twister_engine<unsigned long, 64ul, 312ul, 156ul, 31ul, > 13043109905998158313ul, 29ul, 6148914691236517205ul, 17ul, > 8202884508482404352ul, 37ul, 18444473444759240704ul, 43ul, > 6364136223846793005ul>::operator()()': > /usr/include/c++/9/bits/random.tcc:458:(.text._ZN4arma8arma_rng5randuIdE4fillEPdy[_ZN4arma8arma_rng5randuIdE4fillEPdy]+0x70): > relocation truncated to fit: R_MIPS_TLS_GOTTPREL against > `arma::arma_rng_cxx11_instance' > /usr/include/c++/9/bits/random.tcc:457:(.text._ZN4arma8arma_rng5randuIdE4fillEPdy[_ZN4arma8arma_rng5randuIdE4fillEPdy]+0x354): > relocation truncated to fit: R_MIPS_TLS_GOTTPREL against > `arma::arma_rng_cxx11_instance' > collect2: error: ld returned 1 exit status > > > debian-mips is Cc'ed, can a mips porter please have a look? > >