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'