[Debian-med-packaging] Bug#1054708: mecat2: FTBFS: app/fsa/simple_align.hpp:12:45: error: ‘uint8_t’ has not been declared
Lucas Nussbaum
lucas at debian.org
Fri Oct 27 20:15:10 BST 2023
Source: mecat2
Version: 0.0+git20200428.f54c542+ds-3
Severity: serious
Justification: FTBFS
Tags: trixie sid ftbfs
User: lucas at debian.org
Usertags: ftbfs-20231027 ftbfs-trixie
Hi,
During a rebuild of all packages in sid, your package failed to build
on amd64.
Relevant part (hopefully):
> g++ -o ../Linux-amd64/obj/libfsa.a/app/fsa/simple_align.o -c -MD -D_GLIBCXX_PARALLEL -pthread -O3 -Wall -std=c++11 -DNDEBUG -fopenmp -U_GLIBCXX_PARALLEL -std=c++11 -Wall -O3 -D_FILE_OFFSET_BITS=64 -Iapp/fsa app/fsa/simple_align.cpp
> In file included from app/fsa/simple_align.cpp:1:
> app/fsa/simple_align.hpp:12:45: error: ‘uint8_t’ has not been declared
> 12 | KmerList(const std::string& target, uint8_t k);
> | ^~~~~~~
> app/fsa/simple_align.hpp:21:30: error: ‘uint32_t’ has not been declared
> 21 | size_t FirstPosition(uint32_t bkmer) const {
> | ^~~~~~~~
> app/fsa/simple_align.hpp:28:21: error: ‘uint32_t’ has not been declared
> 28 | size_t Size(uint32_t bkmer) const {
> | ^~~~~~~~
> app/fsa/simple_align.hpp:37:28: error: ‘uint32_t’ was not declared in this scope
> 37 | std::unordered_map<uint32_t, Node> list;
> | ^~~~~~~~
> app/fsa/simple_align.hpp:8:1: note: ‘uint32_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
> 7 | #include <vector>
> +++ |+#include <cstdint>
> 8 |
> app/fsa/simple_align.hpp:37:42: error: template argument 1 is invalid
> 37 | std::unordered_map<uint32_t, Node> list;
> | ^
> app/fsa/simple_align.hpp:37:42: error: template argument 3 is invalid
> app/fsa/simple_align.hpp:37:42: error: template argument 4 is invalid
> app/fsa/simple_align.hpp:37:42: error: template argument 5 is invalid
> app/fsa/simple_align.hpp:74:44: error: ‘uint8_t’ has not been declared
> 74 | SimpleAlign(const std::string &target, uint8_t k);
> | ^~~~~~~
> app/fsa/simple_align.hpp:81:12: error: ‘uint32_t’ does not name a type
> 81 | static uint32_t KmerMask(const uint8_t k);
> | ^~~~~~~~
> app/fsa/simple_align.hpp:81:12: note: ‘uint32_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
> app/fsa/simple_align.hpp:82:12: error: ‘uint32_t’ does not name a type
> 82 | static uint32_t CalcKmer(const char* seq, size_t k);
> | ^~~~~~~~
> app/fsa/simple_align.hpp:82:12: note: ‘uint32_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
> app/fsa/simple_align.hpp:83:12: error: ‘uint32_t’ does not name a type
> 83 | static uint32_t MoveKmer(uint32_t bkmer, size_t k, char e);
> | ^~~~~~~~
> app/fsa/simple_align.hpp:83:12: note: ‘uint32_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
> app/fsa/simple_align.hpp:89:5: error: ‘uint8_t’ does not name a type
> 89 | uint8_t k_;
> | ^~~~~~~
> app/fsa/simple_align.hpp:89:5: note: ‘uint8_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
> app/fsa/simple_align.hpp:91:5: error: ‘uint8_t’ does not name a type
> 91 | uint8_t query_stride_;
> | ^~~~~~~
> app/fsa/simple_align.hpp:91:5: note: ‘uint8_t’ is defined in header ‘<cstdint>’; did you forget to ‘#include <cstdint>’?
> app/fsa/simple_align.hpp: In member function ‘size_t SimpleAlign::KmerList::FirstPosition(int) const’:
> app/fsa/simple_align.hpp:22:28: error: request for member ‘find’ in ‘((const SimpleAlign::KmerList*)this)->SimpleAlign::KmerList::list’, which is of non-class type ‘const int’
> 22 | auto it = list.find(bkmer);
> | ^~~~
> app/fsa/simple_align.hpp:23:31: error: request for member ‘end’ in ‘((const SimpleAlign::KmerList*)this)->SimpleAlign::KmerList::list’, which is of non-class type ‘const int’
> 23 | return it != list.end() ? it->second.head : next_same.size();
> | ^~~
> app/fsa/simple_align.hpp: In member function ‘size_t SimpleAlign::KmerList::Size(int) const’:
> app/fsa/simple_align.hpp:29:28: error: request for member ‘find’ in ‘((const SimpleAlign::KmerList*)this)->SimpleAlign::KmerList::list’, which is of non-class type ‘const int’
> 29 | auto it = list.find(bkmer);
> | ^~~~
> app/fsa/simple_align.hpp:30:31: error: request for member ‘end’ in ‘((const SimpleAlign::KmerList*)this)->SimpleAlign::KmerList::list’, which is of non-class type ‘const int’
> 30 | return it != list.end() ? it->second.count : 0;
> | ^~~
> app/fsa/simple_align.cpp: At global scope:
> app/fsa/simple_align.cpp:19:1: error: no declaration matches ‘SimpleAlign::KmerList::KmerList(const std::string&, uint8_t)’
> 19 | SimpleAlign::KmerList::KmerList(const std::string &target, uint8_t k) {
> | ^~~~~~~~~~~
> app/fsa/simple_align.hpp:11:12: note: candidates are: ‘SimpleAlign::KmerList::KmerList(SimpleAlign::KmerList&&)’
> 11 | struct KmerList {
> | ^~~~~~~~
> app/fsa/simple_align.hpp:11:12: note: ‘SimpleAlign::KmerList::KmerList(const SimpleAlign::KmerList&)’
> app/fsa/simple_align.hpp:12:9: note: ‘SimpleAlign::KmerList::KmerList(const std::string&, int)’
> 12 | KmerList(const std::string& target, uint8_t k);
> | ^~~~~~~~
> app/fsa/simple_align.hpp:11:12: note: ‘struct SimpleAlign::KmerList’ defined here
> 11 | struct KmerList {
> | ^~~~~~~~
> app/fsa/simple_align.cpp:54:1: error: no declaration matches ‘SimpleAlign::SimpleAlign(const std::string&, uint8_t)’
> 54 | SimpleAlign::SimpleAlign(const std::string &target, uint8_t k)
> | ^~~~~~~~~~~
> app/fsa/simple_align.hpp:9:7: note: candidates are: ‘SimpleAlign::SimpleAlign(SimpleAlign&&)’
> 9 | class SimpleAlign {
> | ^~~~~~~~~~~
> app/fsa/simple_align.hpp:9:7: note: ‘SimpleAlign::SimpleAlign(const SimpleAlign&)’
> app/fsa/simple_align.hpp:74:5: note: ‘SimpleAlign::SimpleAlign(const std::string&, int)’
> 74 | SimpleAlign(const std::string &target, uint8_t k);
> | ^~~~~~~~~~~
> app/fsa/simple_align.hpp:9:7: note: ‘class SimpleAlign’ defined here
> 9 | class SimpleAlign {
> | ^~~~~~~~~~~
> app/fsa/simple_align.cpp: In member function ‘SimpleAlign::KmerMatch SimpleAlign::FindKmerMatch(const std::string&, size_t)’:
> app/fsa/simple_align.cpp:64:39: error: ‘k_’ was not declared in this scope
> 64 | for (size_t i=0; i<query.size() - k_ + 1; i += stride) {
> | ^~
> app/fsa/simple_align.cpp:65:22: error: ‘CalcKmer’ was not declared in this scope
> 65 | auto bkmer = CalcKmer(query.c_str()+i, k_);
> | ^~~~~~~~
> app/fsa/simple_align.cpp: In member function ‘SimpleAlign::Result SimpleAlign::Align(const std::string&, int, bool)’:
> app/fsa/simple_align.cpp:78:44: error: ‘query_stride_’ was not declared in this scope
> 78 | KmerMatch match = FindKmerMatch(query, query_stride_);
> | ^~~~~~~~~~~~~
> app/fsa/simple_align.cpp:79:44: error: ‘k_’ was not declared in this scope
> 79 | auto range = FindCandidateRange(match, k_*5, 12);
> | ^~
> app/fsa/simple_align.cpp: In member function ‘SimpleAlign::Result SimpleAlign::Align(const std::string&, const std::string&, int, bool)’:
> app/fsa/simple_align.cpp:153:37: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::__cxx11::basic_string<char>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
> 153 | if ( node.x + node.len >= query.size() || node.y + node.len >= target_.size()) {
> | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~
> app/fsa/simple_align.cpp:153:75: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::__cxx11::basic_string<char>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
> 153 | if ( node.x + node.len >= query.size() || node.y + node.len >= target_.size()) {
> | ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
> app/fsa/simple_align.cpp: At global scope:
> app/fsa/simple_align.cpp:297:10: error: no declaration matches ‘uint32_t SimpleAlign::KmerMask(uint8_t)’
> 297 | uint32_t SimpleAlign::KmerMask(uint8_t k) {
> | ^~~~~~~~~~~
> app/fsa/simple_align.cpp:297:10: note: no functions named ‘uint32_t SimpleAlign::KmerMask(uint8_t)’
> app/fsa/simple_align.hpp:9:7: note: ‘class SimpleAlign’ defined here
> 9 | class SimpleAlign {
> | ^~~~~~~~~~~
> app/fsa/simple_align.cpp:308:10: error: no declaration matches ‘uint32_t SimpleAlign::CalcKmer(const char*, size_t)’
> 308 | uint32_t SimpleAlign::CalcKmer(const char* seq, size_t k) {
> | ^~~~~~~~~~~
> app/fsa/simple_align.cpp:308:10: note: no functions named ‘uint32_t SimpleAlign::CalcKmer(const char*, size_t)’
> app/fsa/simple_align.hpp:9:7: note: ‘class SimpleAlign’ defined here
> 9 | class SimpleAlign {
> | ^~~~~~~~~~~
> app/fsa/simple_align.cpp:321:10: error: no declaration matches ‘uint32_t SimpleAlign::MoveKmer(uint32_t, size_t, char)’
> 321 | uint32_t SimpleAlign::MoveKmer(uint32_t bkmer, size_t k, char e) {
> | ^~~~~~~~~~~
> app/fsa/simple_align.cpp:321:10: note: no functions named ‘uint32_t SimpleAlign::MoveKmer(uint32_t, size_t, char)’
> app/fsa/simple_align.hpp:9:7: note: ‘class SimpleAlign’ defined here
> 9 | class SimpleAlign {
> | ^~~~~~~~~~~
> make[2]: *** [Makefile:411: ../Linux-amd64/obj/libfsa.a/app/fsa/simple_align.o] Error 1
The full build log is available from:
http://qa-logs.debian.net/2023/10/27/mecat2_0.0+git20200428.f54c542+ds-3_unstable.log
All bugs filed during this archive rebuild are listed at:
https://bugs.debian.org/cgi-bin/pkgreport.cgi?tag=ftbfs-20231027;users=lucas@debian.org
or:
https://udd.debian.org/bugs/?release=na&merged=ign&fnewerval=7&flastmodval=7&fusertag=only&fusertagtag=ftbfs-20231027&fusertaguser=lucas@debian.org&allbugs=1&cseverity=1&ctags=1&caffected=1#results
A list of current common problems and possible solutions is available at
http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute!
If you reassign this bug to another package, please mark it as 'affects'-ing
this package. See https://www.debian.org/Bugs/server-control#affects
If you fail to reproduce this, please provide a build log and diff it with mine
so that we can identify if something relevant changed in the meantime.
More information about the Debian-med-packaging
mailing list