Opened 9 years ago
Closed 9 years ago
#8833 closed Bugs (duplicate)
Boost and /clr code
Reported by: | anonymous | Owned by: | Anthony Williams |
---|---|---|---|
Milestone: | To Be Determined | Component: | threads |
Version: | Boost 1.54.0 | Severity: | Problem |
Keywords: | Cc: |
Description
When using boost in an application which uses threads it gives the fault message:
1>c:\program files (x86)\boost\boost_1_47\boost\thread\win32\thread_primitives.hpp(314): error C2472: 'boost::detail::win32::interlocked_bit_test_and_set' cannot be generated in managed code: 'Found an intrinsic not supported in managed code'; compile with /clr to generate a mixed image 1>c:\program files (x86)\boost\boost_1_47\boost\thread\win32\basic_timed_mutex.hpp(160): error C2472: 'boost::detail::basic_timed_mutex::unlock' cannot be generated in managed code: 'Found an intrinsic not supported in managed code'; compile with /clr to generate a mixed image
Found on the internet: Boost.thread uses some thread local storage calls that don't work if you directly link them with CLR code. In VS2008 the link would succeed but you'd crash on startup -- I suspect this is a symptom of the same problem, VS2010-style.
On stackoverflow I found the following workaround: It is necessary to build boost.thread as a DLL instead of linking it statically, and maybe it'll link for you that way...
Note:
See TracTickets
for help on using tickets.
Duplicate of #8832