[Debian-med-packaging] C++ help needed for psortb

Andreas Tille andreas at an3as.eu
Tue Apr 18 21:01:12 UTC 2017


Hi Walter,

On Tue, Apr 18, 2017 at 01:26:58PM -0700, Walter Landry wrote:
> > hmm-binding.cpp: In member function ‘void HMM::init(char*, int, int)’:
> > hmm-binding.cpp:245:20: error: ‘CUT_NONE’ was not declared in this scope
> >    thresh.autocut = CUT_NONE;
> >                     ^~~~~~~~
> > Makefile:346: recipe for target 'hmm-binding.o' failed
> 
> It is difficult to know without spending more time, but I would try
> changing this to
> 
>   thresh.autocut = threshold_s::CUT_NONE;

Thanks for this quick and helpful hint. :-)

Unfortunately I'm not yet through this issue.  A bit later I'm running
into

...
x86_64-linux-gnu-gcc -g -O2 -fdebug-prefix-map=/build/psortb-3.0.4+dfsg=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro  -shared -L/usr/local/lib -fstack-protector-strong HMM.o hmm-binding.o  -o ../blib/arch/auto/Algorithm/HMM/HMM.so      \
   -lm -lpthread -lstdc++ -L/usr/local/lib -lhmmer -lsquid      \

/usr/bin/ld: /usr/lib/gcc/x86_64-linux-gnu/6/../../../x86_64-linux-gnu/libhmmer.a(alphabet.o): relocation R_X86_64_PC32 against symbol `Alphabet' can not be used when making a shared       object; recompile with -fPIC
/usr/bin/ld: final link failed: Bad value
collect2: error: ld returned 1 exit status
...

which is probably due to the fact that I did not changed hmmer2 to
create a shared rather than a static library and lhmmer is not compiled
with -fPIC.  What might be the less stressful way to solve this?  I
think the optimal solution would be to craft configure.ac and
Makefile.am for hmmer2 (which only ships configure and Makefile.in) and
by doing so create a shared library.  However, I do not consider this
as a very fruitful way to spent someones time on orphaned software so
a cheaper solution would be welcome.

Kind regards

        Andreas.


-- 
http://fam-tille.de



More information about the Debian-med-packaging mailing list