On 12/12/16 23:12, Christian Ullrich wrote:
In the "toolset=msvc-14.0 link=shared runtime-link=shared" build, several static libraries are built for no discernible reason. As far as I can tell by watching file system operations (using Sysinternals procmon), these libraries are not accessed again after creation.
There is nothing documented about this behavior, and I suspect a bug in the build process.
The unexpected files are:
libboost_chrono-vc140-mt-1_63.lib libboost_system-vc140-mt-1_63.lib libboost_timer-vc140-mt-1_63.lib libboost_unit_test_framework-vc140-mt-1_63.lib
These two are probably expected, because there are no DLLs built for them at all:
libboost_test_exec_monitor-vc140-mt-1_63.lib libboost_exception-vc140-mt-1_63.lib
Sorry for harping on this, but I still don't understand what's happening here, and would really like to.
The same happens on Linux with gcc as well. I think there's a dependency on the static build of Boost.Test somewhere and Boost.Timer, Boost.Chrono and Boost.System are built as its dependencies. I couldn't find what library is causing the dependency on Boost.Test though. Boost.Exception only builds as a static library, as does libboost_test_exec_monitor.