c/c++ 无法跳转定义

背景

对于嵌入式开发离不开交叉编译工作,采用vccode远程到虚拟机开发来说,总会遇到一个函数跳转问题。下面针对运用开发如何设置vscode保证函数能正确跳转大函数定义。

一、安装c/c++插件

安装C/C++ Extension Pack插件,这插件包含有几个插件。我是有其他vscode主题,C/C++ Themes我单独卸载了,其他的最好都要保留。

安装完插件之后打开一个c/c++文件,会在右下角出现一个中括号{},打开它就发现代码分析扫描功能。

二、设置c_cpp_properties.json

vscode输入快捷键Ctrl+Shift+P,输入c/c++,选择第一个UI

选择c_cpp_properties.json,进入文件编辑,补充对应信息即可。

相关内容解析如下。

bash 复制代码
{
    "configurations": [
        {
            "name": "Linux",//默认Linux
            "includePath": [//补充工程头文件路径,重要
                "${workspaceFolder}/**",
                "${workspaceFolder}/mpp_rtmp",
                "${workspaceFolder}/mpp_rtmp/inc",
                "${workspaceFolder}/mpp_rtmp/rkmpp/inc/rockchip"
            ],
            "defines": [],
            "compilerPath": "/home/zfeng/rk3568_linux_5.10/prebuilts/gcc/linux-x86/aarch64/gcc-arm-10.3-2021.07-x86_64-aarch64-none-linux-gnu/bin/aarch64-none-linux-gnu-gcc",//补充交叉编译器路径,重要
            "cStandard": "c11",//对于 C 语言,GCC 10 默认使用 C11 标准。
            "cppStandard": "c++14",//对于 C++ 语言,GCC 10 默认使用 C++14 标准。
            "intelliSenseMode": "${default}"
        }
    ],
    "version": 4
}

经过上述操作,函数能正常跳转,并且找不到头文件的错误少很多。

三、参考

用于交叉编译的 IntelliSense

相关推荐
All for pursuit.2 分钟前
【动态规划-21】312.戳气球
数据结构·c++·算法·leetcode·动态规划
栈帧之外15 分钟前
【C++】STL之set
开发语言·c++
catchadmin1 小时前
免费可商用 PHP 管理后台 CatchAdmin V5.4.1 发布,新增 MCP 支持
开发语言·php
zhanghaha13141 小时前
C++构造函数的一些其他应用(逐词逐句保姆讲解)
c++
jimy12 小时前
c++的 Type Traits (二、更详细版本)
开发语言·c++
狗凯之家源码网2 小时前
纯 PHP+MySQL 应用市场系统源码实测!
开发语言·mysql·php
dishugj3 小时前
系统架构风险点、敏感点和权衡点的概念和区分
java·开发语言
Zwawa3 小时前
先把轮子转稳,才不会烧心:编码器速度环 PID 怎么接回 PWM
c语言·单片机·嵌入式
geovindu3 小时前
rust:Memento Pattern(续)
开发语言·后端·设计模式·rust·行为模式·备忘录模
马优晨3 小时前
JAVA 中 VO 实体类是什么意思,为什么要做这个
java·开发语言·状态模式·java vo·java vo是什么