VS code 搭建基本的C/C++环境

在新的公司学会了使用 VS code,但感觉这个工具在查看 C++ 代码的时候跳转并不是很友好。通过网上查看资料,终于搭好了环境,特此记录下来,以供参考和学习。

VS code 自带了很多 C/C++ 插件,公司大神说你把评分高的都安装一下。于是乱七八糟的装了一通,发现还是不能很好的支持 搜索函数引用( Find All References ) 这个功能。后来发现使用 "gtags + C++ Intellisense" 便可以解决。

  1. 安装 Gtags:
    1.1 下载安装包
    Gtags 官网提供了各种版本的安装包,我们只需要 download 针对Windows的版本即可 DOS and Windows 32 version,直接选择 GLOBAL 6.6.3 Win32 (938k)。
    1.2 安装以及配置
    下载到的文件是一个 zip 压缩包,直接将其解压到安装目录下。安装目录的选择根据个人喜好即可,我是公司电脑,所以直接装在了 C 盘。
    接着需要配置 Gtags 环境变量 C:\Program Files (x86)\glo663wb\bin (此路径为 gtags.exe 这份文件所在的路径)到 Windows 的 Path 中即可。
    1.3 验证
    Windows 用户直接在命令行运行 gtags --version,如果能获取到正确的信息即可。
    我的输出为:
$ gtags --version
gtags (GNU GLOBAL) 6.6.2
Copyright (c) 1996-2017 Tama Communications Corporation
License GPLv3+: GNU GPL version 3 or later
This is free software; you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
  1. 安装插件 C++ Intellinsense:
    2.1 安装
    直接通过 VS code 的 Extensions ( ctrl+shift+x) 功能安装。安装完成后可以学习下 C++ Intellinsense 的 README,其中详细的介绍了该插件如何使用以及所需要的依赖,还是比较详细的。
    2.2 修改配置
    这篇文章提醒需要修改一处配置文件方能正常使用,Windows 下该文件在 C:\Users\Administrator\.vscode\extensions\austin.code-gnu-global-0.2.2\out\src\features 目录中,将 referenceProvider.js 这份文件中的函数
GlobalReferenceProvider.prototype.provideReferences = function (document, position, options, token) {
        console.log(position);
        var word = document.getText(document.getWordRangeAtPosition(position)).split(/\r?\n/)[0];
        var self = this;
        return this._global.run(['--encode-path', '" "', '-rsax', word])
            .then(function (output) {
            console.log(output);
            var bucket = new Array();
            try {
                if (output != null) {
                    output.toString().split(/\r?\n/)
                        .forEach(function (value, index, array) {
                        var result = self._global.parseLine(value);
                        if (result == null)
                            return;
                        bucket.push(new vscode.Location(vscode.Uri.file(result.path), new vscode.Range(new vscode.Position(result.line, 0), new vscode.Position(result.line, 0))));
                    });
                }
            }
            catch (ex) {
                console.error("Error: " + ex);
            }
            return bucket;
        });
    };

中的该行 return this._global.run(['--encode-path', '" "', '-rax', word]) 的配置 -rax 改成 -rsax

  1. 最后一步:
    在代码工程目录下,启动命令行运行 gtags 命令,会生成 GPATH/GRTAGS/GTAGS 这三个文件,则代表 整个安装过程成功了。
    你可以点击某个函数,右键选择 Find All References 找到所有的函数引用,或者直接用快捷键 shift+alt+f12 即可。
  2. 感谢:
    特别感谢这篇文章的介绍,最近在网上学习,看到很多大神总结的学习方法等等,感到前路漫漫,踏踏实实地走下去方能不负时光。

你可能感兴趣的:(VS code 搭建基本的C/C++环境)