如何使用CMake从VS9切换到NMake使用CMake

问题描述:

在我的计算机上,我有用于测试目的的VS9和VS10。 当我用VS9或VS10配置我的项目时,我对CMake没有任何问题。如何使用CMake从VS9切换到NMake使用CMake

现在我想用NMake生成一个项目,但在配置过程中需要将VS9作为默认的C编译器和CXX编译器,我希望VS10。

任何人都有一个想法,我可以执行这样的事情?

我想从

Projects>cmake .. -G "NMake Makefiles" -DCMAKE_BUILD_TYPE=Debug 
... 
-- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio 
9.0/VC/bin/cl.exe 
-- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio 
9.0/VC/bin/cl.exe -- works 
... 
-- Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studi 
o 9.0/VC/bin/cl.exe 
-- Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studi 
o 9.0/VC/bin/cl.exe -- works 

切换到

Projects>cmake .. -G "NMake Makefiles" -DCMAKE_BUILD_TYPE=Debug 
... 
-- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio 
10/VC/bin/cl.exe 
-- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio 
10/VC/bin/cl.exe -- works 
... 
-- Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studi 
o 10/VC/bin/cl.exe 
-- Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studi 
o 10/VC/bin/cl.exe -- works 

谢谢:)

+0

如果您还没有准备好,你可以试着问CMake的邮件列表上。你可能会很快得到答案。 – 2011-03-11 11:21:38

的NMAKE Makefile文件生成器使用你的shell环境。在一个普通的cmd窗口中,它会失败,并且你通常打开你感兴趣的版本的Visual Studio shell。你也可以运行适当的vcvars。我现在不在Windows机器附近,但我会检查您使用的命令提示符。

+3

从“Visual Studio命令提示符”运行cmake - VS的每个版本都有快捷方式,它将在其“开始菜单”结构中安装以打开命令提示符,并针对该版本的VS调整环境变量。通过输入'call'C:\ Program Files(x86)\ Microsoft Visual Studio 10.0 \ VC \ vcvarsall.bat“x86”,您可以在VS 2010的非VS命令提示符中获得相同的效果 - 同样,更改x86到x64编译为64位程序。 – DLRdave 2011-03-12 12:27:16

您也可以尝试这样的:

set CMAKE_MAKE_PROGRAM="C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE\devenv.exe"