Platformio环境问题集

Platformio环境问题集

1. vscode loading tasks解决办法

1.1 问题原因

这状态是,打开项目时,platformio会在vscode左上角创建一些基本任务,如编译构建上传监控之类在PROJECT TASKS栏目中。

鄙人遇到的一种原因是:这些任务依赖对应开发板的环境,因为某些不知名原因,需要重新下载,而国内下载这个环境一直阻塞,一直失败所以会卡住

vscode只有一个loading tasks我们无法掌控问题发生的细节,可以关掉vscode并使用命令行在项目所在目录执行

pio run -t build

关掉vscode才使得在vscode上的任务退出,而刚才执行的命令才能继续。

鄙人执行情况如下,就是编译的时候发现了esp32环境需要重新下载,然后卡住了。如果这个下载成功了,也许问题就解决了。

在这里插入图片描述

若pio命令找不到,说明没有将pio所在路径加入PATH变量中。可以按以下方法执行:

pio路径在 当前用户目录/.platformio/penv/Scripts/下,在linux终端和powershell可以使用~代替当前用户目录。

powershell

~\.platformio\penv\Scripts\pio run -t build

linux

~/.platformio/penv/Scripts/pio run -t build

windows cmd

C:\Users\这里换成你用户文件夹名称\.platformio\penv\Scripts\pio run -t build

当然把那个目录加入PATH也是可以的

1.2一种解决方法

各位大神想必也有自己的方法提高这个速度。鄙人使用了一种把速度提高到2~3MB/S的方法,就是使用手机数据流量,然后开热点给PC。

下载便成功了。

Platformio环境问题集_第1张图片

虽然构建因为本地文件什么原因失败了,不过重新打开vscode, 这个项目的PROJECT TASKS里面内容也显示出来了,那loading tasks自然也过去了。

Platformio环境问题集_第2张图片


2.pio home点击open无法打开

Error: Could not start PIO Home server: Error: timeout
	at c:\Users\xxx\.vscode\extensions\platformio.platformio-ide-2.5.1-win32-x64\node_modules\platformio-node-helpers\dist\index.js:1:10013...

Platformio环境问题集_第3张图片

2.1问题原因

此处故技重施,打开项目目录比如在vscode终端执行 explorer . 或者 explorer .\ ,再次关掉vscode防止命令冲突。
在项目文件夹打开cmd,执行以下命令

pio home

本人遇到结果如下,又在安装组件这一次是piohome

C:\Users\immor\Documents\PlatformIO\Projects\ServoArm>pio home

  ___I_
 /\-_--\   PlatformIO Home
/  \_-__\
|[]| [] |  http://127.0.0.1:8008/
|__|____|________________________

Open PlatformIO Home in your browser by this URL => http://127.0.0.1:8008/
Tool Manager: Installing platformio/contrib-piohome @ ~3.4.2
Downloading...

解决办法同上再用手机流量开个热点供PC连接。下载完毕后这个在浏览器打开了。
Platformio环境问题集_第4张图片
重新打开vscode,便正常了


3 无法打开 源 文件 “sdkconfig.h” (dependency of “Arduino.h”)C/C++(1696)

检测到 #include 错误。请更新 includePath。已为此翻译单元

这个编译不报错,但会有红色的波浪线标注,让人看着不爽。但去对应目录搜索该文件,的确是存在的。

那就是vscode include的路径不对,多半是pio自动升级的esp32相关环境,sdkconfig.h路径发生变化造成的,而老项目之前是旧的路径,重新打开时就会遇到这个问题。

其实是.vscode下面导包的路径需要修改一下就好了。

防止出现其它问题,先clean一遍
Platformio环境问题集_第5张图片

然后在vscode终端上执行以下命令,就是再初始化一遍 --ide后面就是表示ide的类型

pio init --ide=vscode

Platformio环境问题集_第6张图片

最后问题解决。

4. 232版本CLion 51环境爆红

由于新版的platformio 命令行工具适配了232版的clion。将不在生成cmake文件。所以无法通过在cmake中加库路径,来使得clion找到库位置。即使你回退clion的版本platformio 命令行工具依然不会生成CMakeLists.txt CMakeListsPrivate.txt。所以会出现clion找不到库文件而报红,但是使用platformio run其实是可以build的。

可以通过platformio.ini中加入lib_extra_dirs来解决。
如果是多人协作项目可以使用环境变量代替当前用户目录,但不同操作系统并不一样,可以设置一个通用的环境变量。

[env:STC89C52RC]
platform = intel_mcs51
board = STC89C52RC
lib_extra_dirs =
    C:\Users\用户名文件夹\.platformio\packages\toolchain-sdcc\include

当前用户名目录下.platformio\packages\toolchain-sdcc\include
格式一般是C:\Users\用户名文件夹.platformio\packages\toolchain-sdcc\include
Platformio环境问题集_第7张图片

  • clion发现需要重新加载工程会出现悬浮工具栏,点击那个如同刷新图标的按钮。
  • 当然你也可以在官方插件树上点击重新加载项目
  • 或者右键platformio.ini找到菜单来重新加载项目
  • 或者使用快捷键 ctrl + shift + O来重加载项目

成功后在项目侧边栏External Libraries 里面会出现C:\Users\用户名文件夹.platformio\packages\toolchain-sdcc\include的内容。
Platformio环境问题集_第8张图片

你可能感兴趣的:(platformIO,vscode,ide,编辑器)