美文网首页
janus clion调试以及语法高亮

janus clion调试以及语法高亮

作者: 夏楚子悦 | 来源:发表于2019-05-24 11:31 被阅读0次

    导读

    我们知道clion只能调试CMake的工程,虽然clion也能通过attach进程的方式调试程序,但是这样启动调试很不方便,需要先在shell里面启动进程,然后attach调试,而且如果要调试main函数起始代码,也很困难。所以笔者查看资料找到了clion调试Makefile工程的方法。

    上一遍文章《janus mac下编译记录》中我们已经编译出janus可执行程序,这篇文章以janus为例接着讲解怎么用clion调试janus。

    1、安装compiledb

    在开始之前,我们需要安装一个可以从Makefile生成Compilation DB JSON文件的工具。我们将在本教程中使用的工具是compiledb。它是用Python编写的,所以最简单的方法是使用pip。

    $ pip install compiledb
    

    2、生成compile_commands.json

    #先cd进入makefile所在目录
    $ compiledb -nf make
    

    3、创建CMakeList.txt

    #先cd进入makefile所在目录
    #然后vi CMakeList.txt并输入以下内容
    cmake_minimum_required(VERSION 3.10)
    project(janus)
    
    set(CMAKE_CXX_STANDARD 11)
    set(BUILD_DIR .)  #设置编译目录,也就是Makefile文件所在目录
    message(${BUILD_DIR}) #打印目录路径
    set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
    add_custom_target(janus COMMAND make -C ${BUILD_DIR})#最关键的就是这句, 设置外部编译文件而不是使用CMakeLists.txt
    

    4、通过compile_commands.json打开工程

    打开工程
    Open as Project

    5、添加Debug配置

    Add Configuration
    选择可执行程序
    选择可执行程序2 最终设置界面

    6、完成

    通过上述各步骤之后,clion已经能识别出makefile工程并且可以直接调试,代码也能高亮并且支持跳转等CMake工程支持的一切特性。
    唯一的缺点就是修改代码后,需要重新生成compile_commands.json文件才能更好调试定位代码。

    7、关闭工程源码索引失效问题

    在关闭clion后,下次再打开工程后,代码索引会失效,代码无法高亮。
    通过下面方式可以重新加载索引:


    image.png

    相关文章

      网友评论

          本文标题:janus clion调试以及语法高亮

          本文链接:https://www.haomeiwen.com/subject/ylxgzqtx.html