• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 众包
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
Xelectron
博客园    首页    新随笔    联系   管理    订阅  订阅
从arduino导入到VScode中报错无法通过编译

这个问题之前就遇到过,最近接触的一个项目又遇到这个问题了,想和大家分享一下

列举一个我的小项目,主要就是通过点灯科技的库来和手机小爱同学进行联动,如果有热爱于电子没玩过的可以玩一下

目前我用的是VScode中的PlatformIO来编译esp8266,在arduino中编译没有问题并且可以下载

 

 但是我复制到PlatformIO却会报错

 

 报错的内容一大堆,对于一些刚刚从arduino转到PlatformIO属实不太友好,其实仔细看一下之后会发现,错误的地方只有一处(红色的为错误,黄色的是警告),意思大概为没有找到这个函数(没有定义)

 

 按住ctrl再用鼠标点击错误的路径跳转到错误的地方,再右键点击跳转到定义发现这个函数在名为Hash.cpp文件中包含了

 

 这应该说明是这个.cpp文件没有被项目所应用,但是这个函数和这个文件确实存在,所以下一步就是吧这个函数应用到项目中就没问题了,这里我查找PlatformIO官方文档后发现这个这样一个函数可以将文件包含(添加到PlatformIO.ini图中最后一句话),这句话意思大概就是将该项目文件包含在一整个项目中,这样项目在编译的时候就会把这个文件包含,就会包含之前缺失的.cpp文件

 

 点击编译后,出现SUCCESS表示编译通过

 

 总结:在我当时打算将arduino开发环境转到VScode的时候花了很长时间去配置PlatformIO(期间走了很多弯路),比如安装点灯科技中的类库时我发现PlatformIO上面直接下载的库和arduino中下载的库不一致,后面花了很长时间去配置(当时刚开始学所以很多地方不明白),今天分享的这个问题,我在网上没有搜索到非常具体的过程,在这我把解决过程分享一下。

第一次写博客,文中如有不严谨之处可以向我提出,大家一起相互学习

 

posted on 2022-10-24 13:30  重要的是开新  阅读(537)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3