problem with cctbx

PICCA Frédéric-Emmanuel frederic-emmanuel.picca at synchrotron-soleil.fr
Sun Aug 5 16:47:02 UTC 2012


Ok I try to sumerize things in the wiki


> No, I'm sorry for beeing not clear enough.

normal this is sometime complicate.

> $ grep "const ANNbool" /usr/include/ANN/ANN.h
> const ANNboolANN_ALLOW_SELF_MATCH= ANNtrue;

this is the Debian version right ?

$ grep "const ANNbool" cctbx_sources/annlib/include/ANN/ANN.h
const ANNboolANN_ALLOW_SELF_MATCH= ANNfalse;

this is the cctbx embeded copy, right ?

> annlib version in cctbx is 1.1 Release date: 05/03/05 in debian 1.1.2+doc-3
> Release date: Jan 27, 2010 [1]. If you check [2] Section 2.2.3
> there is explained what this constant does. The file
> "cctbx_sources/annlib_adaptbx/ann/ann_adaptor.cpp" can clear things a little bit
up.

I red the ann_adaptor.cpp and found plenty of comments explainig why they are doing 
  //The annClose() call is removed because it is not clear that
  //KD_TRIVIAL really leads to a memory leak.  Also, if it does, could it
  //just be declared static and leave it at that?
  //annClose();//because of this, it is not possible to have two instances
             //so not thread safe!!

is it related to our problem ?

> So cctbx upstream ANNfalse and auto generates code with ANNtrue and
> namespace annself_include. So when we use annself_include it equals libann in
> debian.

this is not yet clear for me :)

cctbx generate two version in two different name space.
one with ANNfalse in which namespace ?
one with ANNtrue in the annself_include namespace.

then they use both version in the other part of their code.

then the normal namespace (annself ?) provided by Debian libann library is in fact the annself_include namespace of the cctbx libann variant ?

is it all ?

> No I removed it and pushed it. I now use find...-exec...

now it works :)


thanks for your help

Frederic


More information about the debian-science-maintainers mailing list