<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<div class="moz-cite-prefix">On 10/17/12 9:57 PM, Luc Bourhis wrote:<br>
</div>
<blockquote cite="mid:65FAB097-5B73-405A-8858-B85C5EFB4B58@mac.com"
type="cite"><br>
<div>
<div>On Oct 18, 2012, at 11:21 AM, Jeffrey Van Voorst wrote:</div>
<br class="Apple-interchange-newline">
<blockquote type="cite"><span class="Apple-style-span"
style="border-collapse: separate; font-family: Helvetica;
font-style: normal; font-variant: normal; font-weight:
normal; letter-spacing: normal; line-height: normal;
orphans: 2; text-align: -webkit-auto; text-indent: 0px;
text-transform: none; white-space: normal; widows: 2;
word-spacing: 0px; -webkit-border-horizontal-spacing: 0px;
-webkit-border-vertical-spacing: 0px;
-webkit-text-decorations-in-effect: none;
-webkit-text-size-adjust: auto; -webkit-text-stroke-width:
0px; font-size: medium; ">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 -pthread.<br>
</span></blockquote>
</div>
<br>
<div>Could you try adding -DBOOST_DISABLE_THREADS to compile your
C++ program?</div>
<div><br>
</div>
<div>Luc</div>
</blockquote>
<br>
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.<br>
<br>
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?<br>
<br>
If you could point me to a good SCons tutorial or a good example
script that has documentation, that would be very useful.<br>
<br>
--Jeff<br>
</body>
</html>