9

How do I use CMake with Visual Studio 2010 on the command line?

With Visual C++ Express Edition (2010) I would type:

cmake .
nmake
nmake install

simple.

I noticed with Visual Studio 2010, CMake generates a solution file instead of a Makefile. So I type:

cmake .
msbuild mysolutionfile.sln

But then what? I used to be able to type "nmake install" and it would install the project. What do I type now to install the project?

Jason
  • 11,709
  • 9
  • 66
  • 82

2 Answers2

10

Two points:

1- CMake: You can choose your generator. Visual Studio happens to be the default in your case. If you want to use nmake, you can add the following to your cmake command: -G "NMake Makefiles". Alternatively, you can use cmake-gui.exe and the first option will be to choose your generator in a drop-down list. Make sure to remove your previously generated build dir and cmakecache.

2- Visual Studio: you can specify the target to msbuild with /target:INSTALL. Typically cmake creates an INSTALL project: building this project mimicks running make install.

Cheers.

Mathieu JVL
  • 345
  • 2
  • 8
5
devenv mysolutionfile.sln /build Debug /project INSTALL

This is preferable to using msbuild or vcbuild because certain versions of Visual Studio seem to have trouble with the inter-project dependencies that cmake likes to generate.

And devenv is preferable to nmake because it gives you more control over debug configurations, etc.

Elliott Slaughter
  • 1,455
  • 19
  • 27