Makefile 项目中的 CLion 索引
Posted
技术标签:
【中文标题】Makefile 项目中的 CLion 索引【英文标题】:CLion Indexing in Makefile project 【发布时间】:2015-03-22 15:23:00 【问题描述】:所以,我了解 CLion 目前仅完全支持 CMake 项目。我不在乎我是否不能用 CLion 编译或运行任何东西,因为我目前还没有用 Eclipse 这样做。我只是在寻找编辑器支持,具有不错的点击关注、自动完成等功能。
我想知道索引是否仍然可以用于非 CMake 项目。我可以很好地创建我的项目,并且索引完成得很好,但是完成后它找不到我的包含文件。它创建一个默认的 CMakeLists.txt 文件,其中添加了适当的源和 include_directories。但这似乎没有什么不同,因为在索引完成后我仍然无法单击以关注#include 行,并且对其他文件中的任何内容的任何引用都无法正常工作。
我还能做些什么来使索引工作,以便我可以将 CLion 用作编辑器,还是在某天添加 Makefile 支持之前这是一个白日梦?
【问题讨论】:
【参考方案1】:经过一些研究,我发现您的最佳机会是:
创建后,编辑 CMakeLists.txt(例如,请参阅 How to find libraries)。一个例子:
set(Library "../Library")
include_directories($Library)
set(SOURCES main.cpp)
add_executable(project_name $SOURCES)
注意../
进入up文件夹,在main.cpp中你可以使用#include "header_to_add.h"
(header_to_add.h
必须在../Library
文件夹中。
-
编辑您的源代码 .cpp、.h 或其他任何内容以添加您想要#include 的库的完整路径,同时考虑到文件所在目录中的范围开始。
例如:#include "../Library/header_to_add.h"
(注意“../”比当前文件夹上一级”。
-
(可能不可能或很难)修改 makefile 以准备 CMake 以获得必要的输入(例如,请参阅 this)。
我推荐第一个主要是因为它维护了源文件之外的结构。
编辑:也可以准备 CMake 以使用 makefile (Source)。
【讨论】:
以上是关于Makefile 项目中的 CLion 索引的主要内容,如果未能解决你的问题,请参考以下文章
Makefile项目管理-----在Linux下编译c/c++程序