如何在Windows上通过命令行运行由CMake生成的INSTALL.vcxproj?

6
我有一个C++程序,想在AppVeyor上构建和部署它(因此,我没有可用的GUI工具)。我的项目依赖项每个都使用CMake作为其构建系统,在Windows上,CMake(默认情况下)生成Visual Studio项目文件。
其中一个生成的项目文件名为INSTALL.vcxproj,它可能会将依赖项安装在更或多或少标准的位置。如何仅使用命令行执行INSTALL.vcxproj的构建过程呢?
注意:我不一定要使用Visual Studio项目文件。如果使用其他生成器更方便,那也可以(如果您能向我解释如何操作)。
2个回答

10
要调用特定目标的构建,请使用 --target 选项的 cmake --build 命令,即在您的情况下,该命令将类似于 cmake --build (YOUR_BUILD_FOLDER) --config Release --target install。当然,您需要使用 vcvarsall.bat 设置编译器环境。您也可以在其他生成器中使用此命令(请注意,--config 选项仅适用于多配置工具,其中 MSVS 是其中之一)。

1
请注意,如果您要安装到需要提升权限的目录中,必须以管理员身份运行“Visual Studio命令提示符”。 - Chuck Claunch

5

在Windows上使用Visual Studio进行CMake编译将生成以下几个文件:

  1. 1.sln
  2. a.vcxproj
  3. b.vcxproj
  4. INSTALL.vxcproj

要构建,请打开Visual Studio命令提示符并运行:

msbuild b.vcxproj

如果b引用了a.vcxproj,则会自动构建。
安装时,请以管理员身份打开Visual Studio命令提示符并运行:
msbuild INSTALL.vcxproj

这些与Linux相当:

make
make install

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接