Linux系统下使用vscode搭建内核开发环境

概述

在见识到source insight在追踪内核代码方面的强大能力后,习惯使用vscode的我顿时对source insight产生了兴趣,但随后我就发现自己还是不习惯使用source insight,于是折腾起vscode来,看看能不能借助vscode的各种插件来实现强大如source insight那样的内核代码追踪功能。
在网上查找时,发现很多人使用vscode+GNU Global的方案,但试过后发现并不好用,经常提示找不到符号的定义。最后发现一款插件能基本满足我的要求,它的功能虽然比source insight差一些,但支持跳转到定义、代码补全和鼠标悬停显示符号定义这些功能。另外,虽然这款插件和GNU Global一样都要在工程目录下生成文件以供追踪使用,但它生成文件速度也要比GNU Global快。下面是这款插件的基本介绍:
插件名称:Embeded Linux Kernel Dev(简称ELKD)
插件依赖:
软件——universal-ctags
vscode插件——DeviceTree
插件效果(跳转到定义):光标停在符号的位置,然后右击鼠标选择“转到定义”或者按F12,即可查看符号的定义或者直接跳到符号定义的所在文件中。
在这里插入图片描述

插件的安装配置

安装universal-ctags

参考链接:安装ctags方法

安装vscode插件DeviceTree

这个在vscode扩展市场里一搜就有, 此处就不赘述。

安装vscode插件Embeded Linux Kernel Dev

这个也是在vsocde扩展市场里一搜就有,此处也不赘述了。

配置

使用vscode打开内核源码目录,打开任意一个.c文件后,ELKD就会开始生成ctag 索引(显示在vscode的左下角,如下图):
在这里插入图片描述
过了会儿(具体看电脑性能),ctag 索引就会建立完毕。此时可以在源码目录下看到一个名为.vscode-ctags的文件。
在这里插入图片描述
接下来,我们就可以追踪内核代码,查看符号所在文件及其定义了。
更多详细内容,可在vscode中查看ELKD的说明。

  • 7
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值