我正在一个不错的环境(C ++ / Linux / CLI / Makefile / ARM / gcc / Embedded)中进行开发,并且我想使用尚未在另一个桌面上打开的任何IDE打开我的代码:VSCode,Sublime,CLion,atom, ...
VSCode给我留下了深刻的印象,因为我几乎可以按住Ctrl键并单击任何东西:标题,声明,定义...
我只是想知道如何/是否可以在CLion中获得相同的行为?
在Google周围浏览时会看到基于CMake的答案,这当然是不可接受的。
(我do在我的项目的根目录中有一个神奇的三行CMakeList.txt(*)文件,敦促立即真正的Makefile进行正确的工作,以便可以在CLion中进行编译):
cmake_minimum_required(VERSION 3.5.1)
set(CMAKE_TRY_COMPILE_TARGET_TYPE "STATIC_LIBRARY")
project(my_project)
include_directories(.)
include_directories(lib/)
include_directories(lib/*)
include_directories(inc/)
include_directories(inc/*)
include_directories(com/)
include_directories(com/*)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++17")
add_custom_target(my_project COMMAND make -C ${my_project_SOURCE_DIR}
CLION_EXE_DIR=${PROJECT_BINARY_DIR})
为了启用导航,您需要一个项目文件来告诉您的IDE,由于C / C ++预处理程序以及makefile是一种自由格式的编程语言,因此编译时使用的设置/标志/定义是源代码。
即使没有任何项目文件,CLion中也提供了一些非常基本的C / C ++导航。也许您的VSCode采取了默认的解析步骤,或者您启用了带有Makefile插件的VSCode。
CLion当前支持2种类型的项目:CMakeLists.txt
和compilation database。 Makefile
支持在将来的计划中。
要启用高级解析,请创建一个CMakeLists.txt
(如果它不起作用,请在您的问题中引用它,或者为Makefile创建一个编译数据库项目,CLion documentation tells how to do it。