[cctbxbb] --enable-boost-threads flag
Jeffrey Van Voorst
vanv0059 at umn.edu
Thu Oct 18 06:20:27 PDT 2012
On 10/17/12 9:57 PM, Luc Bourhis wrote:
> On Oct 18, 2012, at 11:21 AM, Jeffrey Van Voorst wrote:
>> Ok, let me look into this a bit tomorrow. The issue is free() which
>> gets an invalid address from a shared_ptr for root_data in iotbx_pdb
>> when it is time for the whole pdb hierarchy to disappear. My main
>> issue is I am not sure how to go about debugging shared_ptrs nor what
>> architecture dependent flags or other voodoo (if any) is specified by
> Could you try adding -DBOOST_DISABLE_THREADS to compile your C++ program?
I could do that. However, I would like to have just one copy of cctbx
built, and be able to use the libiotbx_pdb.so library in both single and
multithreaded code. The issue appears to me that the implementation of
the boost smart_ptrs depends on defines set with respect to threads. My
assumption is: if I compile cctbx with -DBOOST_DISABLE_THREADS and link
to the libraries from programs that were not compiled with that flag, I
will run into issues of having differing implementations of smart_ptrs.
To follow up, I would need to try as you suggested. However, for the
purposes of my package it is easiest for me to compile cctbx once.
Therefore I need to compile cctbx without -DBOOST_DISABLE_THREADS and
without -pthreads and see if I still run into the same problem. Am I
correct in inferring that the latest SVN version of cctbx will configure
(by default) to not use -pthreads and not use -DBOOST_DISABLE_THREADS?
If you could point me to a good SCons tutorial or a good example script
that has documentation, that would be very useful.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the cctbxbb