CLion 生成CMakeList文件和include文件不存在问题

2023-05-16

今天导入在Clion上导入了一个其他开发环境下开发的项目,虽然能看得到代码,但是也只能看得到代码了,想要代码跳转,查看声明啥的都看不了,编写错误也不会提示,也不能编译执行。

查找原因原来是没有CmakeList,txt文件,但是代码文件那么多,我也不可能一个一个手配CmakeList,所以就网上找方法....

一.没有CmakeList文件时

找到菜单栏File中的import project导入项目就行,不能用Open File,否则就不会自动创建Cmakelist文件了。如果没有import project选项,就从菜单栏File->Setting->Appearance & Behavior->Menus &Toolbars ->选中Main menu下的File下的File Open Action->点击add after->找到import project后添加。

之后菜单栏File下就有import project了,重新导入项目文件夹,就会提示是否创建覆盖Cmakelist.txt文件,选择要include的文件,点确定就可以有已经配好的Cmakelist了。

二.有Cmakelist时.include 文件路径不存在问题

如果有如下一个文件目录

└─DEMOproject
   └─AFile.h.
   └─2nddictionary
         └─BFile.h
      └─3rddictionary
              └─CFile.h
  └─CMakeLists.txt
  └─DEMOmain.cpp
想要demomain.cpp下include 头文件Afile,BFile,Cfile怎么include?

如果想包含头文件<AFile.h>,必须在Cmakelist中添加:       include_dictionaries(.),不添加这句话想要include根目录下的文件或文件夹都不行。

如果想包含头文件<BFile.h>,必须在Cmakelist中添加          include_dictionaries(2nddictionary),如果不添加这句话,include就必须<2nddictionary/BFile.h>这样写。

同理如果想包含头文件<CFile.h>,必须在Cmakelist中添加      include_dictionaries(2nddictionary/3rddictionary),否则就要include相对路径的形式。

Cmakelist中的include_dictionaries()也就是include目录文件夹,当在代码文件中include文件时,文件会根据include_dictionaries(<目录>)的路径来配对,如果配对后路径中的文件存在则include文件成功,否则会标红。

其实,想要不这么麻烦也行:

在import Project时,选择include所有文件和文件夹,在生成的Cmakelist里再添加 include_dictionaries(.),include 文件不存在问题就不会发生了。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

CLion 生成CMakeList文件和include文件不存在问题 的相关文章

  • 实体框架代码优先 - 多对多 - 包括条件

    我有两个实体Store and Catalog 使用流畅的 Api 建立多对多关系 我想通过以下方式获得商店id所有目录的状态都等于 已发布 下面我尝试编写以下查询 但没有得到预期的结果 var store context Stores I
  • JavaScript:具有 SRC 属性的内联脚本?

    我习惯于像这样包含和使用 JS 出于好奇 有谁知道带有 src 属性的内联脚本的规则 例如
  • 如何在 Visual Studio 中包含子目录?

    我必须包含许多头文件 它们位于不同的子目录中 Visual Studio 中是否有一种方法 我使用的是 2005 版 来设置一个包含路径 Visual Studio 也会在子目录中搜索头文件 从设计的角度来看 在 Visual Studio
  • osx 和 clion,找不到 omp.h

    如何说服 cmake 在 CLion 内 我有可用的 OpenMP 标头 我正在尝试编译这个项目SCD https github com DAMA UPC SCD我收到以下错误 15 Building CXX object tools se
  • CLion 构建依赖目标

    我的 CLions CMakeLists txt 包含超过 1 个目标 库和依赖的可执行文件 如何配置一键构建所有目标 而不是一一选择目标并构建它们 例如 在 Visual Studio 中 我可以配置项目依赖项并构建所有解决方案 CLio
  • 包含文件存储在哪里 - Ubuntu Linux、GCC

    因此 当我们执行以下操作时 include
  • 使用 Linq + Include 排序

    我与两个实体有一对多关系 Order int OrderId string OrderNumber OrderItem int ItemId int sequence Product int ProductId string Product
  • 一个文件夹中包含 100 万个或更多文件,用于包含(缓存)[关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我有一个 理论 问题 看看我正在计划的解决方案是否有意义 我有一个脚本 可以从数据库中读取大量数据 包括设置 配置等 并将其构建在一起 针对每个注册用
  • 将 HTML 文件导入到另一个 HTML 文件中

    我想知道如何将 HTML 文件导入到其他 HTML 文件中 这两个文件都引用许多不同的文件 因此我更愿意将它们保存在两个不同的文件夹中 而不是将一个文件复制到另一个文件中 目前 我正在使用 Django 进行本地开发 include fil
  • cpp:延迟 #include 直到第二遍

    在编译之前 我通过 C 预处理器运行源文件两次 并且我想将 include 指令延迟到第二次通过 直觉上 我尝试了这个 但它不起作用 include
  • 输出字符串末尾的空白不与字符串一起打印,而是与其后的下一个打印行一起打印

    我尝试打印一行 要求用户输入 获取输入 然后再次打印一些行 问题是 在我获得输入后 第一个打印行末尾的空白不是打印在该行的末尾 而是打印在第二个打印行的开头 我对 C 完全陌生 所以我不能真正尝试太多 但我尝试在没有提示用户输入的部分的情况
  • PHP 解析包含

    我包括一个文件init php它定义路径常量 所以如果我包括init php在一个文件中 索引 php 然后在另一个文件中 布局 header php is init php在添加到这些文件之前进行解析 还是添加到父文件中 然后将父文件作为
  • 如何在 Jinja2 中包含具有相对路径的模板

    我正在尝试在模板中包含同一文件夹中的另一个模板 为此 我只是在做 import header jinja2 问题是我不断收到TemplateNotFound error 我的模板文件夹看起来像 myProject templates arb
  • Qt 的最佳实践包括和预编译头文件?

    当使用现代和最新的 C 编译器 例如 MSVC2015 并激活预编译头时 当前关于包含 Qt 头文件的 最佳实践 是什么 Example include
  • C++ 头文件包含

    我正在开发一个项目 每个头文件都有一个预处理器包含防护 我的包含是这样的 文件 gt 包含 main cpp gt header h 字符 h header h gt 矢量 iostream DataFiles h Character h
  • 在 Clion 中更改 CMake 语法颜色

    我安装了 CLion 并自定义配置了深色主题 以便长时间盯着屏幕时眼睛更舒服 我能够更改 C 语法配置的每种颜色 但 CMake 的颜色选项不存在 并且 CMake 的默认颜色是非常深的橄榄色 需要我睁大眼睛才能阅读 CMake 以代码样式
  • JS中如何过滤多个字符串? [复制]

    这个问题在这里已经有答案了 我希望能够过滤数组中的多个字符串 类型 例如我想过滤类型meat并输入fruit在下面的数据结构中 我想要实现的是过滤数据对象 const data type meat food hamburger type f
  • 如何在 Perl 脚本中包含另一个文件中的函数?

    这似乎是一个非常简单的问题 但不知何故 我的 Google Fu 失败了 在 Perl 中包含其他文件中的函数的语法是什么 我正在寻找类似C的东西 include blah h 我看到了使用 Perl 模块的选项 但这似乎需要对我当前的代码
  • 包含目录中的所有文件?

    如何实现以下代码想要实现的目标 include dir In Bash HEADER all headers h echo ifndef ALL HEADERS gt HEADER echo define ALL HEADERS gt gt
  • WordPress 包含 SVG 文件错误

    我使用 PHP 和 WordPress 在本地主机上 我可以毫无问题地包含 SVG 文件 但在实时服务器上 我尝试包含一个 SVG 文件以便能够使用 CSS 对其进行样式设置 我收到此错误消息 Parse error syntax erro

随机推荐