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

相关推荐
bzmK1DTbd18 小时前
Git版本控制:Java项目中的分支管理与合并策略
java·开发语言·git
许长安18 小时前
RPC 同步调用基本使用方法:基于官方 RouteGuide 示例
c++·经验分享·笔记·rpc
Rust研习社18 小时前
为什么 Rust 没有空指针?
开发语言·后端·rust
kyriewen1118 小时前
WebAssembly:前端界的“外挂”,让C++代码在浏览器里跑起来
开发语言·前端·javascript·c++·单元测试·ecmascript
SunnyByte20 小时前
C语言——贪吃蛇的实现
c语言·单链表·贪吃蛇
其实防守也摸鱼20 小时前
CTF密码学综合教学指南--第九章
开发语言·网络·python·安全·网络安全·密码学·ctf
砚底藏山河20 小时前
Python量化开发:2026最佳实时股票数据API接口推荐与对比
开发语言·windows·python
AlunYegeer21 小时前
JAVA,以后端的视角理解前端。在全栈的路上迈出第一步。
java·开发语言·前端
浅念-21 小时前
刷穿LeetCode:BFS 解决 Flood Fill 算法
数据结构·c++·算法·leetcode·职场和发展·bfs·宽度优先
hixiong12321 小时前
C# OpenvinoSharp使用DINOv2模型进行图像相似度计算
开发语言·c#