Bug#1037643: faiss: ftbfs with GCC-13
Package: src:faiss
Version: 1.7.3-2
Severity: normal
Tags: sid trixie
User: debian-gcc@lists.debian.org
Usertags: ftbfs-gcc-13
[This bug is targeted to the upcoming trixie 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-13/g++-13, but succeeds to build with gcc-12/g++-12. The
severity of this report will be raised before the trixie release.
The full build log can be found at:
http://qa-logs.debian.net/2023/05/22/logs/faiss_1.7.3-2_unstable_gccexp.log
The last lines of the build log are at the end of this report.
To build with GCC 13, either set CC=gcc-13 CXX=g++-13 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-13/porting_to.html
[...]
| ^~~~~~~
/<<PKGBUILDDIR>>/faiss/python/../../faiss/invlists/InvertedLists.h:309:11: note: ‘uint8_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
/<<PKGBUILDDIR>>/faiss/python/../../faiss/invlists/InvertedLists.h:327:11: error: ‘uint8_t’ does not name a type
327 | const uint8_t* get_codes(size_t list_no) const override;
| ^~~~~~~
/<<PKGBUILDDIR>>/faiss/python/../../faiss/invlists/InvertedLists.h:327:11: note: ‘uint8_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
/<<PKGBUILDDIR>>/faiss/python/../../faiss/invlists/InvertedLists.h:330:46: error: ‘uint8_t’ does not name a type
330 | void release_codes(size_t list_no, const uint8_t* codes) const override;
| ^~~~~~~
/<<PKGBUILDDIR>>/faiss/python/../../faiss/invlists/InvertedLists.h:330:46: note: ‘uint8_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
/<<PKGBUILDDIR>>/faiss/python/../../faiss/invlists/InvertedLists.h:335:11: error: ‘uint8_t’ does not name a type
335 | const uint8_t* get_single_code(size_t list_no, size_t offset)
| ^~~~~~~
/<<PKGBUILDDIR>>/faiss/python/../../faiss/invlists/InvertedLists.h:335:11: note: ‘uint8_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
/<<PKGBUILDDIR>>/faiss/python/../../faiss/invlists/InvertedLists.h:350:11: error: ‘uint8_t’ does not name a type
350 | const uint8_t* get_codes(size_t list_no) const override;
| ^~~~~~~
/<<PKGBUILDDIR>>/faiss/python/../../faiss/invlists/InvertedLists.h:350:11: note: ‘uint8_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
/<<PKGBUILDDIR>>/faiss/python/../../faiss/invlists/InvertedLists.h:353:46: error: ‘uint8_t’ does not name a type
353 | void release_codes(size_t list_no, const uint8_t* codes) const override;
| ^~~~~~~
/<<PKGBUILDDIR>>/faiss/python/../../faiss/invlists/InvertedLists.h:353:46: note: ‘uint8_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
/<<PKGBUILDDIR>>/faiss/python/../../faiss/invlists/InvertedLists.h:358:11: error: ‘uint8_t’ does not name a type
358 | const uint8_t* get_single_code(size_t list_no, size_t offset)
| ^~~~~~~
/<<PKGBUILDDIR>>/faiss/python/../../faiss/invlists/InvertedLists.h:358:11: note: ‘uint8_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
/<<PKGBUILDDIR>>/faiss/Clustering.cpp: In member function ‘virtual void faiss::Clustering::train(idx_t, const float*, faiss::Index&, const float*)’:
/<<PKGBUILDDIR>>/faiss/Clustering.cpp:83:13: error: cannot convert ‘const uint8_t*’ {aka ‘const unsigned char*’} to ‘const int*’
83 | reinterpret_cast<const uint8_t*>(x_in),
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| |
| const uint8_t* {aka const unsigned char*}
/<<PKGBUILDDIR>>/faiss/Clustering.h:102:28: note: initializing argument 2 of ‘void faiss::Clustering::train_encoded(idx_t, const int*, const faiss::Index*, faiss::Index&, const float*)’
102 | const uint8_t* x_in,
| ~~~~~~~~~~~~~~~^~~~
/<<PKGBUILDDIR>>/faiss/Clustering.cpp: In function ‘void faiss::{anonymous}::compute_centroids(size_t, size_t, size_t, size_t, const uint8_t*, const faiss::Index*, const int64_t*, const float*, float*, float*)’:
/<<PKGBUILDDIR>>/faiss/Clustering.cpp:178:43: error: cannot convert ‘const uint8_t*’ {aka ‘const unsigned char*’} to ‘const int*’
178 | codec->sa_decode(1, x + i * line_size, xif);
| ~~^~~~~~~~~~~~~~~
| |
| const uint8_t* {aka const unsigned char*}
/<<PKGBUILDDIR>>/faiss/Index.h:269:52: note: initializing argument 2 of ‘virtual void faiss::Index::sa_decode(idx_t, const int*, float*) const’
269 | virtual void sa_decode(idx_t n, const uint8_t* bytes, float* x) const;
| ~~~~~~~~~~~~~~~^~~~~
/<<PKGBUILDDIR>>/faiss/Clustering.cpp: At global scope:
/<<PKGBUILDDIR>>/faiss/Clustering.cpp:271:6: error: no declaration matches ‘void faiss::Clustering::train_encoded(idx_t, const uint8_t*, const faiss::Index*, faiss::Index&, const float*)’
271 | void Clustering::train_encoded(
| ^~~~~~~~~~
/<<PKGBUILDDIR>>/faiss/Clustering.h:100:10: note: candidate is: ‘void faiss::Clustering::train_encoded(idx_t, const int*, const faiss::Index*, faiss::Index&, const float*)’
100 | void train_encoded(
| ^~~~~~~~~~~~~
/<<PKGBUILDDIR>>/faiss/Clustering.h:63:8: note: ‘struct faiss::Clustering’ defined here
63 | struct Clustering : ClusteringParameters {
| ^~~~~~~~~~
make[3]: *** [faiss/CMakeFiles/faiss.dir/build.make:135: faiss/CMakeFiles/faiss.dir/Index2Layer.cpp.o] Error 1
make[3]: *** [faiss/CMakeFiles/faiss.dir/build.make:93: faiss/CMakeFiles/faiss.dir/Clustering.cpp.o] Error 1
make[3]: *** [faiss/python/CMakeFiles/faiss_python_callbacks.dir/build.make:79: faiss/python/CMakeFiles/faiss_python_callbacks.dir/python_callbacks.cpp.o] Error 1
make[3]: Leaving directory '/<<PKGBUILDDIR>>/build'
make[2]: *** [CMakeFiles/Makefile2:1142: faiss/python/CMakeFiles/faiss_python_callbacks.dir/all] Error 2
make[2]: *** Waiting for unfinished jobs....
make[3]: Leaving directory '/<<PKGBUILDDIR>>/build'
make[2]: *** [CMakeFiles/Makefile2:982: faiss/CMakeFiles/faiss.dir/all] Error 2
make[3]: Leaving directory '/<<PKGBUILDDIR>>/build'
[ 7%] Built target swigfaiss_swig_compilation
make[2]: Leaving directory '/<<PKGBUILDDIR>>/build'
make[1]: *** [Makefile:149: all] Error 2
make[1]: Leaving directory '/<<PKGBUILDDIR>>/build'
dh_auto_build: error: cd build && make -j8 "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
Reply to: