AIスタックチャンをrobo8080さんが公開されてから2年近く経とうとしています。その間、PlatformIOの環境構築に挑む方々&それをサポートする方々を見届けてきましたが、WindowsやMac等みなさんの環境が違うのでカオスでした。この記事では僕がTwitterとDiscordで見かけたPlatformIOのトラブルで参考になりそうだと思った事例を集めてみました。整理する知識がないのでカオスのままお届けします^_^
最初にまとめておくと、PlatformIOの特徴として、作業者に落ち度がなくてもファイルが誤った場所に設置される事があり、ビルドに失敗するまで問題が起きている事に気付けません。解決法としては、PlatformIOを入れなおすとうまくいくパターンが多い印象です。
(※PlatformIOで初めてフォルダを作る際は、初期化にしばらく時間がかかるので、VSCode画面の右下のメッセージが落ち着くのを待ちのんびり進めてください。落ち着く前に作業を始めるとビルドが通らなくなるかもしれません。)
セキュリティソフトを無効にすると成功した事例
↓カスペルスキーはPlatformIOをブロックするらしい?↓
ESP32をVSCodeとPlatformIO IDEで動かす方法 | UEC Media Design Lab https://www.media.lab.uec.ac.jp/?page_id=1414
固まる初期化を解決した事例
Stuck “Initializing PlatformIO Core…” when switching projects in VSCode | PlatformIO Community
https://community.platformio.org/t/stuck-initializing-platformio-core-when-switching-projects-in-vscode/39874
フォルダの場所を変えたら成功した事例
「デスクトップではなく、CやDドライブ直下にフォルダ(ディレクトリ)を作成した方がいい」というツッコミはたくさん頂きました。
※ Macの場合はデスクトップでも大丈夫らしい?
田中正幸先生が試したところpathは128文字ぐらいが限界の可能性があるらしいです。
>ソースコードを置いているフォルダのパスにASCIIではない文字(日本語など)やスペースがある場合にPlatfromIOがfirmware.mapを見つけられずにエラーになる。
PlatformIO Tips | Zenn さいとてつや https://zenn.dev/saitotetsuya/scraps/4e6f681c56ffb5#comment-cc500bd5991850
↓Windows環境で使用しているpcのユーザー名が長すぎる場合でもPlatformIOのインストールにエラーを出さない方法が『▶インストール中にエラーが出た方へ』に書かれています↓
ESP32でのPlatformIO IDEの使い方と環境構築 | Qiita @NEXT_Formula https://qiita.com/nextfp/items/f54b216212f08280d4e0
PlatformIOを入れなおしたら成功した事例
↓こちらは必要な記述が欠落していた事例ですが、PlatformIOを入れなおしても解決していたはずです。↓
逆にplatformio.ini内に余計な誤った記述がある場合は、いらないライブラリ等がダウンロードされてそれらが悪さをしてビルドが失敗する事もあります。その場合は、platformio.iniの記述とダウンロードされたライブラリの両方を削除する事でビルドが成功するようになります。
一部ファイルを削除すると成功した事例
GitHubからクローンしない方がうまくいった事例
僕が動画で紹介したGitHubからクローンする方法では失敗して、ZIPファイルをダウンロードする方法では成功した方もいます。
おまけ
↓Mac環境でのトラブルの一因が紹介されています↓
>「このエラーが発生する原因は、最近の macOS には /usr/include
が存在しないのにもかかわらず VSCode (もしくは PlatformIO もしくは C/C++ extension)が /usr/include
を読みに行っているからだと思われる。」
VScodeにplatform io を入れて使いたかったけどエラーが出た話 | Qiita @kouxi https://qiita.com/kouxi/items/8e2029d2db3899dbd4b4
PlatoformIo IDE esp32 official example compiler error, pls help | PlatformIO Community
https://community.platformio.org/t/platoformio-ide-esp32-official-example-compiler-error-pls-help/37688
>not declaredエラーが発生したら…
M5Dialの開発手順(M2 Mac環境) | Zenn morita21
https://zenn.dev/morita21/articles/801aff66c6c96d#not-declared%E3%82%A8%E3%83%A9%E3%83%BC%E3%81%8C%E7%99%BA%E7%94%9F%E3%81%97%E3%81%9F%E3%82%89…
コメント