vscodeでplatformioをインストールして使用した際にうまくいかなかったこと。
platformioをvscodeに入れてプロジェクトを作成
試しにESP32に書き込んでみる
FileNotFoundError: [Errno 2] No such file or directory:
ここでエラーが発生
ディレクトリが存在しない、または存在する場合でもアクセス権がないというエラーが出た。
あるのに…
main.cppを見ると#include でエラーが発生してる
「includePathを更新してください」みたいなエラーが出た
調べたら似たような記事が出てきたので参考にさせてもらう
https://qiita.com/okashi_ageruyo/items/a0c243d3b681c9dc89db
コンパイラ パスをgccに変更してみる
エラーは変わらなかった
もう少し調べると近いことが起こっている記事を発見した
https://kainokikaede.hatenablog.com/entry/2021/04/22/222352
以下本文中から抜粋
「このエラーが発生する原因は、最近の macOS には /usr/include
が存在しないのにもかかわらず VSCode (もしくは PlatformIO もしくは C/C++ extension)が /usr/include
を読みに行っているからだと思われる。」
らしい
pathを出力してみる
$ xcrun --show-sdk-path
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk
それでもエラーが取れない
Ardiuno.hがそもそも生成されてないかも?
確認してみた
ls /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/ | grep "Ardiuno.h"
やっぱりなかった
プロジェクト作成時に/usr/includeにが生成されるかも?
もう一度プロジェクト作成から始めてmain.cppを確認した
エラーが消えてる
ビルドも通った
まとめ
正しいpathを設定使用!!
参考