vscode函数跳转环境搭建

之前读书学习时,代码量比较小,装个C/C++插件就可搞定,但面对比较大的工程,只安装这个插件就不起作用了,就需要建立符号链接。

1 基础环境C/C++”插件

“C/C++”插件是来自微软官方的 C/C++ 插件,必备的插件,是代码跳转、自动补全、代码大纲显示等功能的基础。
在这里插入图片描述

2 GNU Global工具

global管理工具分为两部分:

  • vscode的gun global插件
  • 本地的global工具

1、GNU Global插件工具

GNU Global是实现函数跳转的基础工具,VSCode中提供了“C/C++ GNU Global”插件:
在这里插入图片描述
2、本地GNU Global管理工具

  • windows下载安装

地址:https://ftp.gnu.org/pub/gnu/global/,安装最新版即可(至少要>=6.5版本)
目前最新版是6.6.6版,也可以直接使用“wget https://ftp.gnu.org/pub/gnu/global/global-6.6.6.tar.gz”命令下载。

修改环境变量(添加解压出来的bin路径:如:E:\Software_Tool\Global\bin
注意:windows安装的GNU Global是免安装的,直接将其解压即可。

在这里插入图片描述

  • Linux下载安装

直接在命令行输入sudo apt-get insall global

安装完成后,使用global --version命令即可查询到版本信息,说明安装成功:

[hezz@ubu global-6.6 16:46]$ global --version
global (GNU GLOBAL) 6.6
Copyright (c) 1996-2017 Tama Communications Corporation
License GPLv3+: GNU GPL version 3 or later <http://www.gnu.org/licenses/gpl.html>
This is free software; you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

4、配置

在这里插入图片描述

  • Auto Update配置为“Disable”

这是因为我们的工程文件太大,一般的文件大于50MB就要禁用此项功能。

  • completion配置为“Disable”

是为了启用VSCode自带的代码自动补全功能,因为不禁用global自动补全功能的话,有些变量输入时无法进行自动补全。

3 C++ Intellisense和Gtags插件

搜索C++ Intellisense和Gtags插件,并安装。
C++ Intellisense和Gtags插件都是依赖GNU Global的,可以实现函数跳转功能,如下图:

在这里插入图片描述
在这里插入图片描述

4 链接符号生成

安装完毕后,首先使用VSCode打开工程文件夹,然后有两种方法使用:

方法一:

法一,在VSCode中按F1,输入Global:Rebuild Gtags
Database,回车,此时更新的是在VSCode打开得所有文件夹。

方法二:

法二,在c++代码工程文件中,该工程目录终端中执行指令gtags,当代码改动时,cmd执行指令global -u即可更新这三个文件。

最终可以在我们的linux内核工程中会创建GPATH、GRTAGSGTAGS三个文件,(根据文件夹大小,扫描时间也有不同),待扫描完毕后,就可以使用函数跳转功能了

5、安装失败

1、windows安装失败:

打开settings.json

添加global 文件目录(如:E:\Software_Tool\Global\bin

"gnuGlobal.globalExecutable": "E:\\Software_Tool\\Global\\bin\\global.exe",
"gnuGlobal.gtagsExecutable": "E:\\Software_Tool\\Global\\bin\\gtags.exe"

重新查看是否正确安装及版本号

2、Linux安装:

在终端中使用which global;which gtags命令得到工具的路径,此路径要添加到VSCode的配置中:

[hezz@ubu global-6.6 16:48]$which global;which gtags
/usr/local/bin/global
/usr/local/bin/gtags

最后,点击上图中Global Executable下的settings.json,打开配置文件,将前面提前获取的global和gtags工具路径添加进配置文件中:

在这里插入图片描述
注意:在亲自实验的过程中发现已经安装了global,但是的通过global --version可以看到该命令,但是输入global,系统找不到global命令。。这可能是因为没有安装gtags插件的原因,可以提前进行以下gtags插件的安装,再次输入witch global即可找到该命令。

注意:
GTAGS是定义的数据库,GRTAGS是引用的数据库,GPATH是路径的数据库;

另外,如果代码有改动需要使用global -u更新数据库文件,可在User Setting下设置codegnuglobal.autoupdate=false即可自动更新。

  • 1
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值