4

我有一个相对简单CMakeLists.txt的包含以下行:

target_compile_features(myapp PRIVATE
    cxx_generalized_initializers
    cxx_lambdas
    cxx_nullptr)

当我cmake在安装了 MSVC++ 2013 Express 的 Windows 2012 服务器上运行时,我收到以下错误:

CMake Error at CMakeLists.txt:61 (target_compile_features):
  target_compile_features no known features for CXX compiler

  "MSVC"

  version 18.0.30723.0.

是什么导致了这个错误,我能做些什么呢?当我使用 GCC 在 Ubuntu 14.10 中构建项目时,CMake 似乎没有任何问题。

我正在使用 CMake 3.1.0,以防万一(这是第一个支持的 CMake 版本target_compile_features)。

4

1 回答 1

4

CMake 3.1.0 仅支持 GCC 4.7+(在 UNIX 上但不是 APPLE)和 Clang(但不是 AppleClang)3.4+ 的“编译功能”。

CMake 3.2.0 将支持扩展到 GCC 4.4+(在 UNIX 上,包括 APPLE)、AppleClang 4.0+(Xcode 4.4+)、SolarisStudio 12.4 和 MSVC 2010+。

其他编译器的补丁和维护可以发送到 cmake 邮件列表。

确保CMP0025NEW,如果你在APPLE

https://cmake.org/cmake/help/v3.6/command/cmake_policy.html

于 2015-01-25T12:28:16.020 回答