如何使用CMAKE从命令行在Windows上构建x86和/或x64?


72

一种使用cmake在Windows上使用Visual Studio构建x86的方法如下:

  1. 启动x86的Visual Studio命令提示符
  2. 运行cmake: cmake -G "NMake Makefiles" \path_to_source\
  3. 纳马克

一种使用cmake在Windows上使用Visual Studio构建x64的方法如下:

  1. 启动x64的Visual Studio命令提示符
  2. 运行cmake: cmake -G "NMake Makefiles" \path_to_source\
  3. 纳马克

使用Cmake,如何编译一个或两个体系结构?(例如Visual Studio如何在IDE中执行此操作)


1
此处相同,但似乎有解决方案:zeroset.mnim.org/2015/07/15/…(而且无需关闭提示并使用nmake
Tomasz

Answers:


134

CMake无法做到这一点。您必须生成两个单独的构建文件夹。一种用于x86 NMake构建,另一种用于x64 NMake构建。您也无法使用CMake生成涵盖这两种体系结构的单个Visual Studio项目。

若要从命令行为32位和64位生成Visual Studio项目而不启动Visual Studio命令提示符,请使用常规的Visual Studio生成器。

对于CMake 3.13或更高版本,运行以下命令:

对于较早版本的CMake,请运行以下命令:

CMake生成的使用Visual Studio生成器之一的项目可以从命令行通过使用选项(--build后跟生成目录)来生成。这些--config选项指定构建配置。


有没有一种方法可以使用一个命令提示符+两个构建目录,并在不必退出并启动x86提示符和x64提示符的情况下创建两种体系结构?
010110110101 2015年

53

尝试使用 CMAKE_GENERATOR_PLATFORM

例如


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.