Hidden (missing) library dependency, when linking with cl.exe
Question: I've just been exposed to a large non-trivial CMake/Eclipse based C++ project.
One of the build targets is Windows/nmake based. In the final step of building
an executable, the linker throws LNK1104: cannot open file 'python27.lib'.
This is correct, because Python 2.7 hasn't been installed.

Problem is, I cannot find any references to this library in cl.exe's command
line. Also a grep on the whole project directory (including eclipses .metadata
directory) won't find anything plausible. Deleting all the cmake generated
build stuff didn't help too.

The real question is, if MSVC-based libraries (import or static ones) have any
mechanism to request additional libraries during the link step implicitely.
There are a few pre-compiled ones in the mentioned project. I simply need the
vocabulary, where to begin a more qualified search regarding the error cause.


Answer: I found the answer here:

[Puzzling dependency of Boost.Python 1.54 (debug build) to Python27.lib on
Windows](http://stackoverflow.com/questions/19716859/puzzling-dependency-of-
boost-python-1-54-debug-build-to-python27-lib-on-window)

Basically, the culprit is a `#pragma comment()` directive inside the boost
libraries.

