如何在命令提示符下设置 v140_xp 工具集以使用 NMake 构建?

Posted

技术标签:

【中文标题】如何在命令提示符下设置 v140_xp 工具集以使用 NMake 构建?【英文标题】:how to set v140_xp toolset in command prompt for build with NMake? 【发布时间】:2015-10-17 15:55:30 【问题描述】:

我有一些 lib 项目,应该使用 nmake Windows XP 的 makefile 构建。

如何将 VS2015 本机命令提示符中的工具集从 v140 更改为 v140_xp (Visual Studio 2015 - Windows XP (v140_xp))。 有什么想法吗?

【问题讨论】:

工具集仅在您使用 MSBuild 构建时才有效。当您使用 NMake 时,选择正确的构建工具可执行文件、工具选项和目录完全是您的工作。 v140_xp 工具集使用 SDK 7.1 并设置链接器的 /SUBSYSTEM。只有 SDK 对库项目很重要。 【参考方案1】:

Cmake 知道如何为 XP 编译。

诀窍是在 Cmake 命令行中添加标志 -T v140_xp,在 CmakeLists.txt 中添加指令 set( CMAKE_VERBOSE_MAKEFILE on ),让 msbuild 编译您的代码。

cmake -T v140_xp path/to/src msbuild host.vcxproj /p:Configuration=Release

所有编译和链接标志都将输出到终端。

对于旧版本的 VisualStudio,请使用 v120_xp 而不是 v140_xp

【讨论】:

谢谢你,期待已久的答案! 这仅适用于您使用 msbuild 构建,而不是使用 nmake。

以上是关于如何在命令提示符下设置 v140_xp 工具集以使用 NMake 构建?的主要内容,如果未能解决你的问题,请参考以下文章

在Qt Creator中设置VS平台工具集

Windows XP 下 CAtlStringMgr::GetInstance 崩溃

VS2013 "v120_xp" 默认作为平台工具集

VS2012 nmake使用v110_xp工具集?

如何在Qemu虚拟机中安装Windows XP系统

如何设置发布/调试模式以使用 Microsoft C++ 工具集在命令提示符处编译 cpp 文件