VSCode+PlatformIO报错 找不到头文件

devtools/2025/2/28 7:42:39/

如图示,找不到目标头文件

demo工程运行正常,考虑在src文件夹内开辟自己的代码,添加后没有找到

找了些资料,大概记录如下:

1、c_cpp_properties.json 内记录 头文件配置

.vscode 中,此文件是自动生成的,不用修改。(在工程内保存一次,观察是生成一次)

 2、基本都是配置 platformio.ini 

src_dir:源代码目录的路径

include_dir:头文件目录的路径

build_src_filter :要编译的源文件,与platformio部分中定义的src_dir相关

build_flags = -I./src/myApp

①include_dir用于生成c_cpp_properties.json中的"e:/Desktop/test/template/src"

②build_src_filter用于指定.c文件的路径,可以基于src_dir路径来配置(例如-<*>,屏蔽src_dir路径下的.c),也可以从工程目录来指定路径(例如+<./src/**/*.c>)

③build_flags内添加新增的路径信息,以-I开头,从工程目录来指定。

# Path to directory for source code. Can be absolute path or relative path.
src_dir = .# Path to directory for header files.
include_dir = ./src# Source files to be compiled, relative to src_dir defined in the platformio section.
#   * "+<PATH>" means to include
#   * "-<PATH>" means to exclude
#   * "**" means any path, including all sub directories
build_src_filter = "-<*> +<./src/**/*.c>"# Extra compiler flags.
build_flags = -DBAUD_RATE=115200 -I./src/myApp

3、演示

工程代码

template.rar: (访问密码: 1666)
 

注意:

打算使用 #include "test.h" ,才考虑上面的

如果直接 #include "./src/test.h" ,在.c中指定路径,那也不同在配置里面添加头文件了


http://www.ppmy.cn/devtools/163298.html

相关文章

在线抽奖系统——管理员登录

目录 获取验证码 时序图 集成阿里云短信服务 SMSUtil 验证码生成 约定前后端交互接口 controller 层接口设计 Service 层接口设计 Redis sendVerificationCode getVerificationCode 接口测试 JWT JWTUtil 定义拦截器 配置拦截路径 用户登录 时序图 验证码登…

Ubuntu+deepseek+Dify本地部署

1.deepseek本地部署 在Ollama官网下载 需要魔法下载 curl -fsSL https://ollama.com/install.sh | sh 在官网找到需要下载的deepseek模型版本 复制命令到终端 ollama run deepseek-r1:7b 停止ollama服务 sudo systemctl stop ollama # sudo systemctl stop ollama.servi…

MySQL之解决表中存储类型为[1,2,3]这样的字符串中去除括号[]和逗号‘,‘的问题(FIND_IN_SET+replace)

bug&#xff1a;筛选条件时&#xff0c;筛选出了不符合电影类型的影片 问题如下&#xff1a; 数据库的film表中的字段type_ids类型是varchar&#xff0c;他用来存储电影的类型id&#xff0c;如&#xff1a;type_ids里面存的是[1,12,15]&#xff0c;说明他存的是电影类型中id为…

[Java基础] JVM常量池介绍(BeanUtils.copyProperties(source, target)中的属性值引用的是同一个对象吗)

文章目录 1. JVM内存模型2. 常量池中有什么类型&#xff1f;3. 常量池中真正存储的内容是什么4. 判断一个字符串(引用)是否在常量池中5. BeanUtils.copyProperties(source, target)中的属性值引用的是同一个对象吗&#xff1f;6. 获取堆内存使用情况、非堆内存使用情况 1. JVM内…

火绒终端安全管理系统V2.0网络防御功能介绍

网络防御是指通过一系列技术、策略和措施&#xff0c;保护网络系统、数据和资源免受未经授权的访问、攻击、破坏或泄露。 火绒终端安全管理系统&#xff1a;网络防御功能包含网络入侵拦截、横向渗透防护、对外攻击检测、僵尸网络防护、Web服务保护、暴破攻击防护、远程登录防护…

【SpringBoot】论坛项目中如何进行实现发布文章,以及更新对应数据库的数据更新

前言 &#x1f31f;&#x1f31f;本期讲解关于websocket的相关知识介绍~~~ &#x1f308;感兴趣的小伙伴看一看小编主页&#xff1a;GGBondlctrl-CSDN博客 &#x1f525; 你的点赞就是小编不断更新的最大动力 &#x1f386;那么废话不多…

C#实现本地Deepseek模型及其他模型的对话

前言 1、C#实现本地AI聊天功能 WPFOllamaSharpe实现本地聊天功能,可以选择使用Deepseek 及其他模型。 2、此程序默认你已经安装好了Ollama。 在运行前需要线安装好Ollama,如何安装请自行搜索 Ollama下载地址&#xff1a; https://ollama.org.cn Ollama模型下载地址&#xf…

如何成为一名合格的单片机工程师----引言介绍篇(1)

前言 在当今数字化时代&#xff0c;单片机&#xff08;Microcontroller Unit&#xff0c;MCU&#xff09;已成为电子设备的核心组件之一&#xff0c;广泛应用于智能家居、工业自动化、汽车电子、物联网等领域。作为一名单片机工程师&#xff0c;你将有机会参与到各种创新项目中…