[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