Re: [boost] [thread] 1.33.1 with vc71, links against msvcrt and msvcprt

Anthony Williams:
Any build of the library that requires MSVCPRT and MSVCRT is just broken, since they are the single-threaded runtime, and their use indicates that the library was built without MT support. I'm surprised the library manages to build at all without MT support, since the CRT thread functions, such as beginthread, aren't available unless MT support is enabled.
MSVCRT and MSVCPRT are the DLL runtimes, not the single-threaded ones; you're thinking of LIBC and LIBCP. I have STLport versions, but: C:\Boost\lib>dumpbin /directives libboost_thread-vc71-mt-sp-1_33_1.lib | findstr DEFAULTLIB | sort | uniq /DEFAULTLIB:"LIBCMT" /DEFAULTLIB:"libcpmt" /DEFAULTLIB:"OLDNAMES" /DEFAULTLIB:"stlport_vc71_static.lib" /DEFAULTLIB:"uuid.lib" C:\Boost\lib>dumpbin /directives libboost_thread-vc71-mt-p-1_33_1.lib | findstr DEFAULTLIB | sort | uniq /DEFAULTLIB:"msvcprt" /DEFAULTLIB:"MSVCRT" /DEFAULTLIB:"OLDNAMES" /DEFAULTLIB:"stlport_vc71.lib" /DEFAULTLIB:"uuid.lib" Looks like someone has managed to build the static version against DLL runtimes, or just done some creative renaming... -- David McCabe ________________________________________________________________________ This e-mail, and any attachment, is confidential. If you have received it in error, do not use or disclose the information in any way, notify me immediately, and please delete it from your system. ________________________________________________________________________

Dave McCabe wrote:
I have STLport versions, but:
C:\Boost\lib>dumpbin /directives libboost_thread-vc71-mt-sp-1_33_1.lib | findstr DEFAULTLIB | sort | uniq /DEFAULTLIB:"LIBCMT" /DEFAULTLIB:"libcpmt" /DEFAULTLIB:"OLDNAMES" /DEFAULTLIB:"stlport_vc71_static.lib" /DEFAULTLIB:"uuid.lib"
C:\Boost\lib>dumpbin /directives libboost_thread-vc71-mt-p-1_33_1.lib | findstr DEFAULTLIB | sort | uniq /DEFAULTLIB:"msvcprt" /DEFAULTLIB:"MSVCRT" /DEFAULTLIB:"OLDNAMES" /DEFAULTLIB:"stlport_vc71.lib" /DEFAULTLIB:"uuid.lib"
Looks like someone has managed to build the static version against DLL runtimes, or just done some creative renaming...
Don't know what you think is wrong on the above. These two dumpbin indicate correct behaviour. The -s- indicates linking to static runtime, while missing s means dynamic runtime. Or did I misunderstand you? Roland
participants (2)
-
Dave McCabe
-
Roland Schwarz