I use the following command to build boost 1.66.0 for Visual C++ 2015:


“b2 --toolset=msvc-14.0 --with-thread --with-filesystem --with-date_time --with-regex --with-locale --with-atomic --with-program_options link=static,shared address-model=64 threading=multi --build-type=complete --stagedir=stage\x64 -a define=BOOST_USE_WINAPI_VERSION=0x0501”


The build completes successfully with the following message (I replaced the complete path with ellipsis):



The Boost C++ Libraries were successfully built!


The following directory should be added to compiler include paths:




The following directory should be added to linker library paths:





Header files for specified libraries (thread, filesystem etc.) are copied under …\boost\1_66_0\boost\... as expected, however, files for several header only libraries (such as algorithm\string.hpp) are not copied to the expected location and that causes building the project which uses them to fail.


Am I using b2 incorrectly?

Is there a command line argument that directs b2 to copy the files for header only libraries that I need to use?

Or do I need to manually copy the missing files to the right include path?