Intel® C++ Compiler for Windows* - Fatal link error LNK1104 when using Intel® C++ Compiler with Boost* libraries
When building an application that uses the Boost libraries with the Intel® C++ Compiler, you may get linker errors like the ones shown below due to incorrect libraries being linked to the application:
fatal error LNK1104: cannot open file 'libboost_thread-iw-mt-1_33_1.lib' fatal error LNK1104: cannot open file 'libboost_thread-iw-1_33_1.lib' ...
The root cause is missing Boost libraries for the Intel® C++ Compiler.
The preferred solution is to recompile all required Boost libraries with the Intel® C++ Compiler (libraries with the infix "iw" are created because of this). However, this is not mandatory. The libraries provided for the different Microsoft Visual Studio* versions are safe to use as well. Perform the following steps to use them instead:
Open the Boost configuration file "auto_link.hpp".
// Intel C++, no version number:
# define BOOST_LIB_TOOLSET "iw"
Change "iw" depending on which Microsoft Visual Studio version you're using:
"vc71": Microsoft Visual Studio .NET 2003 "vc80": Microsoft Visual Studio 2005 "vc90": Microsoft Visual Studio 2008 "vc100": Microsoft Visual Studio 2010 "vc110": Microsoft Visual Studio 2012
Rebuild your application to resolve the linker errors.