如何使用Visual Studio命令行+ SCons构建Windows XP应用程序?

问题描述 投票:7回答:1

使用Visual Studio 2015 IDE构建Windows xp应用程序并不难,您只需要使用正确的平台工具集(v120_xp或v140_xp),并确保在目标计算机上安装适当的可再发行的visual studio运行时dll, peasy。

现在,我一直试图找出如何在不使用VS GUI但使用VS2015命令行+ SCons的情况下构建针对windows xp的windows xp应用程序

所有SCons标志都是文档here但我没有看到任何允许我更改平台工具集的内容。

如果你想知道平台工具集标志的真正含义是什么...经过一些研究我已经能够弄清楚该标志真正做的是基本上生成适合目标机器加载器的不同PE头,你可以看到下面4个不同案例之间的比较(v120,v120_xp,v140,v140_xp):

enter image description here

问题:在使用visual studio command line或使用visual studio command line + SCons时,如何更改visual studio平台工具集?

编辑:我发现这个Can I set the platform toolset from the command line when building with VS2010's msbuild?但我不确定是否可以通过SCons使用:/

visual-studio visual-studio-2015 scons portable-executable nuitka
1个回答
2
投票

经过大量挖掘后,我发现了了解平台工具集的最佳策略,意思是手动比较这个标志会如何影响cllink,我已经做过了,这是我的发现:

v120_xp
-------
link: /SUBSYSTEM:CONSOLE",5.01"
cl: /D "_USING_V110_SDK71_"

v120
----
link: /SUBSYSTEM:CONSOLE
cl:

v140_xp
--------
link: /SUBSYSTEM:CONSOLE",5.01"
cl: /D "_USING_V110_SDK71_" /Zc:inline

v140
-------
link: /SUBSYSTEM:CONSOLE
cl: /Zc:inline

我已经提取出所有常见参数,只留下受平台工具集影响的相关参数。为了更多地了解这整个主题,我建议你专门阅读官方文档中的/SUBSYSTEM标志。

此外,Executable/Include/Library/Exclude目录将调整为使用Windows SDK 7。

剩下的事情是将这些标志与SCons集成,这应该很容易,例如,你只需要将这些标志添加到nuitka environment

© www.soinside.com 2019 - 2024. All rights reserved.