CMake构建32位程序

CMake用来跨平台构建非常方便,特别是开源软件,跨平台的体验基本一致。但是偶尔需要构建32位程序版本时候,很多人就不知道该怎么操作了。

GUI界面操作

实际上GUI界面平常用来构建非常方便,但是想要在这个界面上生成32位程序却没有找到配置项目。
基本上程序只识别了编译器,比如VS2019,但是并没有选择32或者64位的地方。所以此种方法不通。

命令行操作

平常使用命令行基本没有设置什么参数,这个地方大家应该都知道使用 -G 参数生成工程文件,比如NMake或者VS解决方案。
如果只是简单的这么用,生成VS解决方案,打开只有x64一个选项,当然如果查看 -G 可以生成的类型,貌似有个 ARCH 设置,但其实仔细阅读后面的说明部分,这个地方只能使用 ARM 或者 Win64,并没有32位选项

Generators
Visual Studio 17 2022 = Generates Visual Studio 2022 project files.
Use -A option to specify architecture.
* Visual Studio 16 2019 = Generates Visual Studio 2019 project files.
Use -A option to specify architecture.
Visual Studio 15 2017 [arch] = Generates Visual Studio 2017 project files.
Optional [arch] can be "Win64" or "ARM".
Visual Studio 14 2015 [arch] = Generates Visual Studio 2015 project files.
Optional [arch] can be "Win64" or "ARM".
Visual Studio 12 2013 [arch] = Generates Visual Studio 2013 project files.
Optional [arch] can be "Win64" or "ARM".
Visual Studio 11 2012 [arch] = Generates Visual Studio 2012 project files.
Optional [arch] can be "Win64" or "ARM".
Visual Studio 10 2010 [arch] = Generates Visual Studio 2010 project files.
Optional [arch] can be "Win64" or "IA64".
Visual Studio 9 2008 [arch] = Generates Visual Studio 2008 project files.
Optional [arch] can be "Win64" or "IA64".

其实这个地方还有个 -A 参数类指定平台,其说明如下

-A <platform-name>           = Specify platform name if supported by
generator.

有了这个参数,就可以生成32位的工程了,比如

cmake . -G "Visual Studio 16 2019" -A Win32
最近的文章

Win10最简单高效的垃圾清理方式

Windows系统最让人头疼的就是清理垃圾的问题了,要是自己平时不注意的话,很快C盘就满了,导致整个系统变慢。通常我们会安装类似360之类的软件来清理,但其实Win10系统已经自带了非常方便的垃圾清理,而且还自带了杀毒等功能,本次我们就只针对清理方面说一下方法。 更改软件缓存位置通常的垃圾都是软件的 …

技术 继续阅读
更早的文章

修改VSCODE的TAB为空格

Visual Studio Code 是非常好用的代码编辑器,包括常用的编程语言。但是其设置相对其他IDE稍微复杂了一些,今天就遇到了格式化后代码使用了TAB缩进,而不是我之前设置的空格模式,毕竟空格模式在其他IDE下最终显示效果是不变的, 有些IDE的TAB设置的是8个空格哦。 修改VSCODE的 …

技术 继续阅读