18

随着 Visual Studio 2012 Update 1 的发布,我希望构建一个 C++ 项目来支持 Windows XP。有没有办法使用 CMake 生成针对 Windows XP 的项目?基本上,CMake 需要生成一个使用 Platform Toolset = Visual Studio 2012 - Windows XP (v110_xp) 的项目文件。

4

4 回答 4

17

根据http://www.cmake.org/Bug/view.php?id=10722答案现在(很快)是的。

已在 CMake 2.8.11 版本中修复

此处添加了一个新的“生成器工具集”功能:

http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=7dab9977 [^]

现在可以从命令行运行 CMake

-G“Visual Studio 10”-T“v90”

为了使用特定的工具集进行构建。我们还没有为此添加到 cmake-gui 的一流接口,但可以在配置之前添加缓存条目“CMAKE_GENERATOR_TOOLSET”以包含“-T”值。

于 2013-04-08T10:21:50.563 回答
13

根据http://www.cmake.org/Bug/view.php?id=10722答案是否定的。

更新:上面提到的错误已通过以下评论解决:

已在 CMake 2.8.11 版本中修复

此处添加了一个新的“生成器工具集”功能:

http://cmake.org/gitweb?p=cmake.git;a=commitdiff;h=7dab9977 [^]

现在可以从命令行运行 CMake

-G“Visual Studio 10”-T“v90”

为了使用特定的工具集进行构建。我们还没有为此添加到 cmake-gui 的一流接口,但可以在配置之前添加缓存条目“CMAKE_GENERATOR_TOOLSET”以包含“-T”值。

您还可以查看对其他答案的评论。

于 2012-11-28T08:35:00.367 回答
1

我认为您可以为 Visual Studio 2010/2012 生成一个解决方案。打开此解决方案,在 Visual Studio 中打开解决方案/项目,打开属性并将平台工具集重新配置为 v110_xp。

那你应该没事。但我仍在寻找解决方案如何设置命令行来构建 v110_xp 程序......

于 2012-11-28T07:58:39.800 回答
1

我认为解决此问题的最佳方法是使用 CMake 为 Visual Studio 2010 构建项目,然后使用 Visual Studio 2012 打开项目。这样做时,使用的工具集将是适用于 WinXP 的 vs2010。

于 2013-04-23T03:50:42.523 回答