
I could be that I since serialization isn't currently threadsafe anyway, No one builds with this switch and the issue doesn't come up. I would have hoped that this would be automatically taken care of by the following sequence of conditions: bjam <threading>multi => config/BOOST_HAS_THREADS =>inclusion of reference to threading library => link with threading library. Also, I haven't looked at the threading library in enough depth to understand why the whole library can't be a header only library. After all, isn't is basically a wrapper around native OS primitives? Robert Ramey Sergey Skorniakov wrote:
I'm not sure that BOOST_SPIRIT_THREADSAFE is really required in the case of serialization - I'm not very familiar with spirit. But when I build boost with the following user-config jam file:
using msvc : 8.0 : : <cxxflags>"-wd4996 -wd4103 -Zp4 -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -D_SECURE_SCL=0 -DBOOST_SPIRIT_THREADSAFE -DBOOST_THREAD_USE_DLL " <linkflags>"-LIBPATH:%BOOSTROOT%/lib" ;
the resulting boost_serialization*.dll depends on boost_thread*.dll