Re[3]: [boost] Re: Re[2]: Re: Windows MSVC thread exit handlerfor staticlylinkedBoost.Thread

Hi Roland, _RTLDLL reminds me of borland or some other compiler, microsoft sets _DLL internally, if you use dynamic runtime (/MD or MDd). some essential for threading: if _MSC_VER: microsoft or intel (__INTEL_COMPILER for intel specific) then _MT: if multithreaded runtime then _DLL: if dynamic runtime Ferda
-----Original Message----- From: boost-bounces@lists.boost.org [mailto:boost-bounces@lists.boost.org] On Behalf Of Roland
Just beeing curious. How does the _RTLDLL getting set? I experimented with #ifdef _RTLDLL #error "DLL RT" #else #error "STATIC RT" #endif
No matter which runtime I select it always seems not to be defined.
Roland

Ferdinand Prantl wrote:
_RTLDLL reminds me of borland or some other compiler, microsoft sets _DLL internally, if you use dynamic runtime (/MD or MDd).
You are right, thanks for pointing this out. If anybody wants to play with my test project, please udate relevant part of test685.cpp with: #if defined(_DLL) && defined(NDEBUG) #pragma comment (lib, "../DllRelease/pe_tls.lib") #pragma message("using MSVCRT.DLL") #elif defined(_DLL) && defined(_DEBUG) #pragma comment (lib, "../DllDebug/pe_tls.lib") #pragma message("using MSVCRTD.DLL") #elif !defined(_DLL) && defined(_MT) && defined(NDEBUG) #pragma comment (lib, "../Release/pe_tls.lib") #pragma message("using LIBCMT.LIB") #elif !defined(_DLL) && defined(_MT) && defined(_DEBUG) #pragma comment (lib, "../Debug/pe_tls.lib") #pragma message("using LIBCMTD.LIB") #else #error You need to use multithreaded CRT (/MD, /MDd, /MT or /MTd) #endif B.
participants (2)
-
Bronek Kozicki
-
Ferdinand Prantl