【问题标题】:Cmake generated Eclipse Project - No SourceCmake 生成的 Eclipse 项目 - 无源
【发布时间】:2015-12-12 03:51:33
【问题描述】:

我正在尝试使用 CMake 生成 Eclipse 项目文件。虽然我能够成功构建,但我无法在 eclipse 中浏览或编辑源代码。这是一个树外构建,其中我的构建目录与我的源目录处于同一级别。我正在使用以下命令生成 eclipse 文件:

cmake -G"Eclipse CDT4 - Unix Makefiles" -DBoost_NO_BOOST_CMAKE=ON -DBOOST_ROOT=/usr/local/lib -DCMAKE_ECLIPSE_GENERATE_SOURCE_PROJECT=TRUE ../proc

源目录有很多不同的模块,但是顶层的 CMakeLists 文件本质上是一堆 add_subdirectory 命令添加每个模块。这是不正确的吗?

【问题讨论】:

    标签: c++ linux eclipse cmake


    【解决方案1】:

    我使用以下命令创建eclipse项目

    cmake -G"Eclipse CDT4 - Unix Makefiles" -DCMAKE_ECLIPSE_GENERATE_SOURCE_PROJECT=TRUE -DCMAKE_BUILD_TYPE=Debug $PROJECT_SRC_DIR
    // $PROJECT_SRC_DIR is where my highest level CMakeLists.txt is
    

    我的 CMakeLists.txt 基本上是这样的

    cmake_minimum_required (VERSION 3.5.0)
    cmake_policy(VERSION 3.5.0)
    project(myproject VERSION 0.0.0)
    # definition, find packages, compiler settings
    add_subdirectory(src) # where my code is
    # src contains further subdirectories with CMakeLists.txt and subproject definition therein.
    

    这将创建一个带有虚拟目录 [Source Directory] ​​的 Eclipse 项目,该目录指向 Eclipse 使用 project(...) 命令显示最高级别 CMakeLists.txt 文件内容的目录.此外,它还显示了 [Subprojects] 和 [Targets],其中显示了 cmake 子项目(定义子项目的 CMakeLists.txt 级别的目录内容)或目标(与可执行文件组合的文件列表) add_executable() 命令。

    您是否定义了项目?

    【讨论】:

      【解决方案2】:

      我对 Eclipse 和 KDevelop 都有相同的体验。 CMake 准备配置以便您可以在这些 IDE 中进行编译和调试,但它实际上并没有添加任何有助于 IDE 列出源文件以供浏览它们的信息。

      【讨论】:

      • 我能得到的最好的结果是使用 -DCMAKE_ECLIPSE_GENERATE_SOURCE_PROJECT=TRUE 标志,它会生成一个单独的项目。然后,您可以在一个项目中编辑源代码,然后构建另一个项目。不过我不喜欢它;很乱。
      猜你喜欢
      • 2019-04-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-28
      • 2011-09-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多