【问题标题】:cmake doesn't recognize CMAKE_ECLIPSE_VERSION settingcmake 无法识别 CMAKE_ECLIPSE_VERSION 设置
【发布时间】:2013-02-09 11:44:08
【问题描述】:

我正在尝试从现有的 cmake 文件生成 eclipse .project 和 .cproject。从项目根目录运行 cmake 我尝试添加到根目录 CMakeLists.txt set(CMAKE_ECLIPSE_VERSION=4.2) 显然可能什么都不做,因为它是一个局部变量,而不是全局环境变量,如果我理解正确的话。

尝试像这样将标志添加到命令行:

cmake -G"Eclipse CDT4 - Unix Makefiles" -DCMAKE_ECLIPSE_VERSION=4.2 .

产生以下警告。那么如何让cmake知道eclipse的版本呢?

-- 无法确定 Eclipse 版本,假设至少为 3.6 (Helios)。如果这是错误的,请调整 CMAKE_ECLIPSE_VERSION。

我检查了 .project 文件,它似乎使用的是 cdt 4。相当旧。

凯斯滕

【问题讨论】:

  • 我也有同样的问题。如果有办法解决这个问题,那就太好了。
  • 我发现的一种解决方法是确保 Eclipse 在您的 PATH 中,以便 CMake 可以找到它。这样您就不必手动指定 Eclipse 版本了。
  • 您介意将我的答案标记为已接受吗?更清楚的是,如果其他人阅读了这个问题,它会起作用:)
  • 我有同样的问题,正在等待最新版本。 eclipse版本设置不正确,会不会影响项目或者我的工作?

标签: eclipse variables cmake eclipse-cdt


【解决方案1】:

我遇到了同样的问题,查看 CMake 的代码后,我注意到用于获取 Eclipse 版本的实际变量名为 _ECLIPSE_VERSION(以下划线开头)而不是 CMAKE_ECLIPSE_VERSION。代码如下所示:

cmake -G"Eclipse CDT4 - Unix Makefiles" -D_ECLIPSE_VERSION=4.2 .

这对我有用!

编辑:旧版本的 CMake 无法识别 Eclipse 4.2(使用 CDT 8.1),但可以识别 3.7(使用 CDT 8.0)。我使用 -D_ECLIPSE_VERSION=3.7 并且 Juno 很好地选择了项目配置(以前由于默认生成的 CDT4 文件不兼容,我有未解决的包含)。正如 m3tikn0b 所指出的,在 Eclipse Kepler 4.3 之前,较新版本的 CMake 可以识别。

【讨论】:

  • 我今天测试的cmake版本(2.8.12.1)支持-D_ECLIPSE_VERSION=4.2并识别为“Juno”
  • 或者添加到CMakeLists.txt set(_ECLIPSE_VERSION "4.4")
【解决方案2】:

CMake 中有一个错误。见0014422: CMAKE_ECLIPSE_VERSION is not taken into account。问题跟踪器表示将在 cmake 2.8.13 中更正。

【讨论】:

  • CMake 直接跳到了 3.0 版,所以任何对此感兴趣的人都应该检查那个版本。
【解决方案3】:

同样的问题。经过搜索,我找到了以下解决方案:

以前尝试过:

cmake -G"Eclipse CDT4 - Unix Makefiles" -D_ECLIPSE_VERSION=4.2  ../src

它不起作用。然后我尝试了:

cmake -G"Eclipse CDT4 - Unix Makefiles" -DCMAKE_ECLIPSE_VERSION=4.2  ../src

这对我有用..我希望它有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-23
    • 1970-01-01
    • 1970-01-01
    • 2023-02-23
    相关资源
    最近更新 更多