
Andrew Finkenstadt wrote:
Somehow a programmer here managed to build a version of boost::thread version 1.32 whose .LIB file did not contain any directives to link against MSVCRT and MSVCPRT; there doesn't seem to be anything I do with bjam that causes version 1.33.1 to do the same. (He just handed me the .lib files to install into the right place, I knew I should have insisted he learn to do it himself. :) )
While it should be possible to build a library that will not emit the autolink pragmas it is not recommended to do so.
"dumpbin /directives /archivemembers libboost_thread-vc71-mt-s-1_33_1.lib" yields several
Linker Directives ----------------- /DEFAULTLIB:"msvcprt" /DEFAULTLIB:"MSVCRT"
commands. Which totally breaks my application (which requires the use of LIBCMT) by complaining of duplicate symbols defined in both. /NODEFAULTLIB: is not appropriate.
However the dumpbin you are showing indeed is strange. The upcoming 1.34 version (from cvs) does not show this dependency, it correctly shows the LIBCMT in its requirements. As I do not currently have a 1.33 build around I cannot tell for sure if this was a bug in 1.33 or if you made a mistake during the build of the library. I will try to verify this. Roland