Question

I am developing an application in VS2005 which uses Boost 1.54. After messing up with compilations, I decided to download the "alredy baked" VS8.0 Win32 binaries, and there they go.

Now the thing is, the application is being generated with the /MD option, which means, correct me if wrong, that it is being dynamically linked (external dependencies shall be provided in means of DLL files).

I have used Boost::Thread in my application, and it runs fine in my computer. As it is generated with /MD, it is supposed to require DLLs in other computers, isn't it?

However, when asking a peer (who does not work with Boost) to run my app, it simply runs fine. Wasn't it supposed to shout with a DLL missing error?

Thanks.

Was it helpful?

Solution

/MD is a flag dedicated to the C run time, it is not related to Boost. By default, i think Visual Studio links statically Boost. If you want to link dynamically, you need to add a flag BOOST_ALL_DYN_LINK Also, i would recommend the excellent Walker Dependency whenever you want to check dynamic dependencies

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top