[CMake] Issue with CMAKE 2.6 and Windows.

Brad King brad.king at kitware.com
Wed May 21 08:29:40 EDT 2008


Phil Pellouchoud wrote:
> I noticed that the TARGET_LINK_LIBRARIES seems to add ".obj" instead of
> ".lib" to link libraries without an extension.  I went back to 2.4 and
> everything works fine...  When it adds the .obj, obviously the build fails
> because it can't find the .obj (it should be looking for .lib).
> 
> Anyone else seeing this?

CMake is not adding the .obj extension.  It generates the path to the
library exactly as you provided it on the generated link line in the VS
project.  It's the VS linker that decides to add ".obj" instead of
".lib".  The difference in link line generation from CMake 2.4 is
documented here:

  http://www.cmake.org/Wiki/CMake_2.6_Notes#Link_Line_Generation

Basically, CMake 2.4 would turn "c:/path/to/foo" into

  /LIBPATH:c:\path\to   foo.lib

while CMake 2.6 is preserving user-provided full paths.

-Brad


More information about the CMake mailing list