Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/138.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 如何使用CMake设置MSVC目标平台版本?_C++_Visual C++_Cmake - Fatal编程技术网

C++ 如何使用CMake设置MSVC目标平台版本?

C++ 如何使用CMake设置MSVC目标平台版本?,c++,visual-c++,cmake,C++,Visual C++,Cmake,我正在寻找设置使用生成的MSVC项目的目标平台版本的方法。我在CMake问题跟踪器中发现以下内容,该跟踪器现已关闭。我使用的是最新的3.9.1版本的CMake。但这里描述的解决方案似乎不起作用。我试过了 set (CMAKE_SYSTEM_VERSION 8.1) 在myCMakeLists.txt中 使用CMake时如何设置Terget平台版本 后记: 现在,我在生成解决方案时检查了命令行中的设置CMAKE\u SYSTEM\u VERSION,但如果可能,我希望能够从CMakeLists.

我正在寻找设置使用生成的MSVC项目的目标平台版本的方法。我在CMake问题跟踪器中发现以下内容,该跟踪器现已关闭。我使用的是最新的
3.9.1
版本的CMake。但这里描述的解决方案似乎不起作用。我试过了

set (CMAKE_SYSTEM_VERSION 8.1)
在my
CMakeLists.txt

使用CMake时如何设置Terget平台版本

后记:

现在,我在生成解决方案时检查了命令行中的设置
CMAKE\u SYSTEM\u VERSION
,但如果可能,我希望能够从
CMakeLists.txt
文件中进行设置

cmake -G "Visual Studio 14 2015 Win64" -DCMAKE_SYSTEM_VERSION=8.1 ..\source\

至少在第一次使用
project
解决问题之前,使用
set(CMake\u SYSTEM\u VERSION 8.1 CACHE-TYPE INTERNAL FORCE)
可以从CMake GUI

设置这一点会很好。

查看CMake的-T命令行选项。(例如
-T v120
-T v141
)。请参阅此答案以了解更多信息。不要紧,我混淆了目标平台版本和目标平台工具集。您可以在GUI中进行设置。您只需单击“添加条目”按钮。请注意,必须输入完整版本字符串,如VS中“Windows SDK版本”属性页中显示的字符串。对于我使用过的:CMAKE_SYSTEM_VERSION=10.0.17763.0必须在单击“配置”之前添加此条目。请注意,它必须位于顶级
CMakeLists.txt的第一个
项目
之前,因为它需要在生成时全局设置(很明显,但我没有设置)。