0
votes

I do not have a comprehensive understanding of the microsoft linker's configuration and procedures so I am confused why it searches for a particular library configuration.

I am making a C++ DLL using MSVC2010 and the v100 tools. I am using a few boost classes such as the TCP socket and a TCP acceptor.

The MSVC linker complains that it can not find libboost_thread-vc100-mt-s-1_55.lib

The good news is that I have libboost_thread-vc100-mt-1_55.lib and the debug version libboost_thread-vc100-mt-gd-1_55.lib but the bad news is that I can't understand why the -s- version is being requested.

I understand that I can generate the -s- version by rebuilding the libraries. Is this suggested? I am statically linking all libraries if possible.

1

1 Answers

1
votes

You're attempting to link the c++ runtime statically, which is making boost want to grab it's static runtime link version "-s". /MT is the option configured( project properties, c++, code generation.), when you probably want /MD and /MDd

See http://msdn.microsoft.com/en-us/library/2kzt1wy3.aspx