dll or not dll or what?
Hello! being a beginner in C++ and boost I set up the stuff for use with VC++ 2005 Express just today. After some problems I finally managed to get it link, but it's still not fully the way I want. There are three libs: boost...dll, libboost...lib and libboost...s...lib. My questions: -What's the difference between the second and the third one? -Why does building with the IDE link against the second and building on the console (/ link /LIBPATH:...) link against the third type? I looked into auto_link.hpp and the IDE seems to set _DLL but boost doesn't define BOOST_DYN_LINK. But I can't find out why. This leads to question 3: -How to link so the dll will be used? That questions might be a good deal compiler specific but since auto_link.hpp is involved I hope here's still the right place to ask. Thank you in advance! AJ Martin
Martina Janter wrote:
There are three libs: boost...dll, libboost...lib and libboost...s...lib. My questions: -What's the difference between the second and the third one?
The third one is built against the static runtime library, the second against the dynamic runtime library (in other words these differ depending which code generation options you select in your IDE).
-Why does building with the IDE link against the second and building on the console (/ link /LIBPATH:...) link against the third type? I looked into auto_link.hpp and the IDE seems to set _DLL but boost doesn't define BOOST_DYN_LINK. But I can't find out why. This leads to question 3: -How to link so the dll will be used?
Define BOOST_ALL_DYN_LIB in your project settings->defines. _DLL indicates that the dll runtime is in use, but for deployment reasons many people prefer to still link Boost statically: hense this is the default. HTH, John.
participants (2)
-
John Maddock
-
Martina Janter