Now for the good news: Boost.Regex will automatically select the correct library variant to link against, you don't need to do anything, and you shouldn't explicitly link against any of those libraries. Just make sure that the directory containing the libraries is in your library search path (under properties->linker->Additional Library Directories).
Wow, how clever!! I removed the explicit linking and added the search path to both Debug and Release configs (in my case, the path is 'E:\boost_1_40\lib' for all libraries). The Release build still builds and runs fine. But when I try to launch the Debug build I get a dialog box with this message:-
" Unable to start program 'F:\MSVCtest_app\debug\MSVCtest_app.exe' This application has failed to start because the application configuration is incorrect. Review the manifest file for possible errors. Reinstalling the application may fix this problem. "
FWIW I only seem to have these two (boost_regex) DLLs:-
boost_regex-vc80-mt-1_40.dll and boost_regex-vc80-mt-gd-1_40.dll
but my app's manifest file (for the Debug version) specifies "Microsoft.VC80.DebugCRT". Is one of those DLL's a CRT-debug DLL or am I missing something?
Yes the -gd version is the debug build... but the default behavior for Boost.Regex is to static link, so it shouldn't be looking for any regex dll at all (unless you explicitly defined BOOST_REGEX_DYN_LINK when building your app). So my best guess at present is that this is a VC++ installation issue... does building and running a "hello world" app in debug mode work? Apologies if this is a stupid suggestion... John.