[Debian-med-packaging] Bug#1126095: porechop: FTBFS porechop/include/alignment.h:10:17: error: ‘seqan’ is not a namespace-name

Emanuele Rocca ema at debian.org
Wed Jan 21 18:58:24 GMT 2026


Source: porechop
Version: 0.2.4+dfsg-6
Severity: serious
Tags: ftbfs sid trixie
Justification: fails to build from source (but built successfully in the past)

Hi,

porechop currently fails to build from source on amd64 and arm64 (and probably
other architectures) with the following errors:

g++ -std=c++14 -Iporechop/include -fPIC -O3 -D NDEBUG -g -O2 -ffile-prefix-map=/build/reproducible-path/porechop-0.2.4+dfsg=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -c -o porechop/src/adapter_align.o porechop/src/adapter_align.cpp
In file included from porechop/include/adapter_align.h:7,
                 from porechop/src/adapter_align.cpp:1:
porechop/include/alignment.h:10:17: error: ‘seqan’ is not a namespace-name
   10 | using namespace seqan;
      |                 ^~~~~
porechop/include/alignment.h:15:26: error: expected ‘)’ before ‘<’ token
   15 |     ScoredAlignment(Align<Dna5String, ArrayGaps> & alignment,
      |                    ~     ^
      |                          )
porechop/include/adapter_align.h:9:17: error: ‘seqan’ is not a namespace-name
    9 | using namespace seqan;
      |                 ^~~~~
porechop/src/adapter_align.cpp: In function ‘char* adapterAlignment(char*, char*, int, int, int, int)’:
porechop/src/adapter_align.cpp:15:5: error: ‘Dna5String’ was not declared in this scope; did you mean ‘seqan2::Dna5String’?
   15 |     Dna5String sequenceH = readSeq;
      |     ^~~~~~~~~~
      |     seqan2::Dna5String
In file included from /usr/include/seqan/sequence.h:112,
                 from porechop/include/adapter_align.h:4:
/usr/include/seqan/sequence/sequence_shortcuts.h:119:36: note: ‘seqan2::Dna5String’ declared here
  119 | typedef String<Dna5, Alloc<void> > Dna5String;
      |                                    ^~~~~~~~~~
porechop/src/adapter_align.cpp:16:15: error: expected ‘;’ before ‘sequenceV’
   16 |     Dna5String sequenceV = adapterSeq;
      |               ^~~~~~~~~~
      |               ;
porechop/src/adapter_align.cpp:20:5: error: ‘Align’ was not declared in this scope; did you mean ‘seqan2::Align’?
   20 |     Align<Dna5String, ArrayGaps> alignment;
      |     ^~~~~
      |     seqan2::Align
In file included from /usr/include/seqan/file.h:65,
                 from /usr/include/seqan/stream.h:62,
                 from /usr/include/seqan/score.h:43,
                 from /usr/include/seqan/graph_align.h:45,
                 from /usr/include/seqan/align.h:59,
                 from porechop/include/alignment.h:8:
/usr/include/seqan/file/file_forwards.h:46:7: note: ‘seqan2::Align’ declared here
   46 | class Align;
      |       ^~~~~
porechop/src/adapter_align.cpp:20:23: error: ‘ArrayGaps’ was not declared in this scope; did you mean ‘seqan2::ArrayGaps’?
   20 |     Align<Dna5String, ArrayGaps> alignment;
      |                       ^~~~~~~~~
      |                       seqan2::ArrayGaps
In file included from /usr/include/seqan/align.h:85:
/usr/include/seqan/align/gaps_array.h:75:25: note: ‘seqan2::ArrayGaps’ declared here
   75 | typedef Tag<ArrayGaps_> ArrayGaps;
      |                         ^~~~~~~~~
In file included from porechop/src/alignment.cpp:2:
porechop/include/alignment.h:10:17: error: ‘seqan’ is not a namespace-name
   10 | using namespace seqan;
      |                 ^~~~~
porechop/include/alignment.h:15:26: error: expected ‘)’ before ‘<’ token
   15 |     ScoredAlignment(Align<Dna5String, ArrayGaps> & alignment,
      |                    ~     ^
      |                          )
porechop/src/adapter_align.cpp:20:34: error: ‘alignment’ was not declared in this scope
   20 |     Align<Dna5String, ArrayGaps> alignment;
      |                                  ^~~~~~~~~
porechop/src/alignment.cpp:6:33: error: expected constructor, destructor, or type conversion before ‘(’ token
    6 | ScoredAlignment::ScoredAlignment(Align<Dna5String, ArrayGaps> & alignment,
      |                                 ^
porechop/src/adapter_align.cpp:21:12: error: ‘rows’ was not declared in this scope; did you mean ‘seqan2::rows’?
   21 |     resize(rows(alignment), 2);
      |            ^~~~
      |            seqan2::rows
In file included from /usr/include/seqan/align.h:97:
/usr/include/seqan/align/align_base.h:341:1: note: ‘seqan2::rows’ declared here
  341 | rows(Align<TSource, TSpec> const & me)
      | ^~~~
porechop/src/adapter_align.cpp:21:5: error: ‘resize’ was not declared in this scope; did you mean ‘seqan2::resize’?
   21 |     resize(rows(alignment), 2);
      |     ^~~~~~
      |     seqan2::resize
In file included from /usr/include/seqan/align.h:146:
/usr/include/seqan/align/dp_matrix_sparse.h:95:1: note: ‘seqan2::resize’ declared here
   95 | resize(DPMatrix_<TValue, SparseDPMatrix, THost> & dpMatrix,
      | ^~~~~~
porechop/src/adapter_align.cpp:22:18: error: ‘row’ was not declared in this scope; did you mean ‘seqan2::row’?
   22 |     assignSource(row(alignment, 0), sequenceH);
      |                  ^~~
      |                  seqan2::row
/usr/include/seqan/align/align_base.h:372:1: note: ‘seqan2::row’ declared here
  372 | row(Align<TSource, TSpec> const & me,
      | ^~~
porechop/src/adapter_align.cpp:22:37: error: ‘sequenceH’ was not declared in this scope
   22 |     assignSource(row(alignment, 0), sequenceH);
      |                                     ^~~~~~~~~
porechop/src/adapter_align.cpp:22:5: error: ‘assignSource’ was not declared in this scope; did you mean ‘seqan2::assignSource’?
   22 |     assignSource(row(alignment, 0), sequenceH);
      |     ^~~~~~~~~~~~
      |     seqan2::assignSource
In file included from /usr/include/seqan/align.h:89:
/usr/include/seqan/align/gaps_anchor.h:672:1: note: ‘seqan2::assignSource’ declared here
  672 | assignSource(Gaps<TSequence, AnchorGaps<TGapAnchor> > & gaps, TSequence2 const & source)
      | ^~~~~~~~~~~~
porechop/src/adapter_align.cpp:23:37: error: ‘sequenceV’ was not declared in this scope
   23 |     assignSource(row(alignment, 1), sequenceV);
      |                                     ^~~~~~~~~
porechop/src/adapter_align.cpp:24:5: error: ‘Score’ was not declared in this scope; did you mean ‘seqan2::Score’?
   24 |     Score<int, Simple> scoringScheme(matchScore, mismatchScore, gapExtensionScore, gapOpenScore);
      |     ^~~~~
      |     seqan2::Score
In file included from /usr/include/seqan/score.h:45:
/usr/include/seqan/score/score_base.h:68:7: note: ‘seqan2::Score’ declared here
   68 | class Score;
      |       ^~~~~
porechop/src/adapter_align.cpp:24:11: error: expected primary-expression before ‘int’
   24 |     Score<int, Simple> scoringScheme(matchScore, mismatchScore, gapExtensionScore, gapOpenScore);
      |           ^~~
porechop/src/adapter_align.cpp:26:5: error: ‘AlignConfig’ was not declared in this scope; did you mean ‘seqan2::AlignConfig’?
   26 |     AlignConfig<true, true, true, true> alignConfig;
      |     ^~~~~~~~~~~
      |     seqan2::AlignConfig
In file included from /usr/include/seqan/align.h:70:
/usr/include/seqan/align/align_config.h:93:7: note: ‘seqan2::AlignConfig’ declared here
   93 | class AlignConfig
      |       ^~~~~~~~~~~
porechop/src/adapter_align.cpp:26:41: error: ‘alignConfig’ was not declared in this scope
   26 |     AlignConfig<true, true, true, true> alignConfig;
      |                                         ^~~~~~~~~~~
porechop/src/adapter_align.cpp:27:44: error: ‘scoringScheme’ was not declared in this scope
   27 |     int score = globalAlignment(alignment, scoringScheme, alignConfig);
      |                                            ^~~~~~~~~~~~~
porechop/src/adapter_align.cpp:27:17: error: ‘globalAlignment’ was not declared in this scope; did you mean ‘seqan2::globalAlignment’?
   27 |     int score = globalAlignment(alignment, scoringScheme, alignConfig);
      |                 ^~~~~~~~~~~~~~~
      |                 seqan2::globalAlignment
In file included from /usr/include/seqan/align.h:218:
/usr/include/seqan/align/global_alignment_specialized.h:121:5: note: ‘seqan2::globalAlignment’ declared here
  121 | int globalAlignment(Gaps<TSequenceH, TGapsSpecH> & gapsH,
      |     ^~~~~~~~~~~~~~~
porechop/src/adapter_align.cpp:29:48: error: ‘length’ was not declared in this scope; did you mean ‘seqan2::length’?
   29 |     ScoredAlignment scoredAlignment(alignment, length(readSeq), length(adapterSeq), score);
      |                                                ^~~~~~
      |                                                seqan2::length
In file included from /usr/include/seqan/align.h:145:
/usr/include/seqan/align/dp_matrix.h:419:1: note: ‘seqan2::length’ declared here
  419 | length(DPMatrix_<TValue, TMatrixSpec, THost> const & dpMatrix)
      | ^~~~~~
make[1]: *** [Makefile:56: porechop/src/alignment.o] Error 1
make[1]: *** Waiting for unfinished jobs....
make[1]: *** [Makefile:56: porechop/src/adapter_align.o] Error 1
make[1]: Leaving directory '/build/reproducible-path/porechop-0.2.4+dfsg'



More information about the Debian-med-packaging mailing list