トホホな疑問(36) cmake.launchTargetPath not found

Joseph Halfmoon

ラズパイPicoのC言語でのビルドとデバッグ環境が一応動作しました。しかしcuiです。も少し楽に操作できるようにVS Codeからビルドできるようにしようとしましたが障害発生。コマンドラインからは問題なく動くcmakeがVS Codeから動きませぬ。トホホ。しかし「またもや」ラズパイの中の人はそんなこともお見通しなのでした。

ずっとMicroPythonでRaspberry Pi Picoを使ってきたので、C言語での開発環境の整備が後手に回りました。ようやく以下の投稿にて、Raspberry Pi 4 model B+上でラズパイPico用のオブジェクトファイルのビルドとラズパイPicoへの書き込み、そしてGDB使ったデバッグができるようになりました。

鳥なき里のマイコン屋(126) ラズパイPico、遅ればせながらビルド&デバッグ環境整える

しかし、コマンドラインツール使っての操作です。最初の1回くらいは中で何が起こっているのか知るためにもコマンドラインツール使ってみるのはよいと思うのです。でも直ぐに面倒になります。GUIでクリック一発の方が何もおぼえなくても良いので楽だ(記憶力の衰えたこの年寄りには。)

今回ラズパイ4をラズパイPicoのクロスコンパイル&デバッグ用母艦として使用しております。ラズパイ様の推奨環境通り。そしてラズパイ4上にも VS Codeがインストール済です。そのままラズパイ4のGUI上でVS Codeを動作させても悪くはないのですが、

PC上のVS CodeからリモートSSH接続で作業したい

という希望です。ラズパイ4には専用のモニタやキーボードを接続しておらず、PCからSSHとVNCで接続しています。PC上で直接開いているVS Codeの方が使いやすいです。すでにラズパイ3やラズパイ1(1という言い方しないかも)でPC上のVS Codeでリモート接続することは行ってきています。

ローカルであろうが、リモートであろうが設定の仕方は大差ない

という感触を持っていました。ぶっちゃけ、必要なVS CodeのExtensionを、ローカルマシンにインストールするか、リモートマシンにインストールするかだけ注意すれば良い、という感じ。その上、このあいだ購入のご本に、そのものズバリの記事が掲載されていました。以下投稿で取り上げさせていただいたCQ出版Interface誌8月号の記事であります。

Literature watch returns(26) Interface 2021.8

「第1部第2章 開発環境2… PCからラズパイ経由でPicoをプログラミング」は、私の注文通りの環境構築記事でした。まあ、既に「ある程度」手を付けてあるし、このような日本語ドキュメントがあれば楽勝じゃね、と思いましたです。

実際、手順7までは順調というか、ほとんど一撃。しかし、最後にきて嫌な予感がしました。「ツールチェーンの選択画面が表示されたら」という指示があるのですが、

ツールチェーンの選択画面など表示されません

それでも設定ファイルのコピーなど行って「デバッグの開始」を行うのですが、無情にもエラーです。アイキャッチ画像にエラーのときに示されるポップアップウインドウ(実際に遭遇したときポップアップウインドウをキャプチャしなかったです。アイキャッチは後で別環境で発生させた似たエラーです。そのため微妙にエラーメッセージが異なります)のキャプチャを掲げました。

cmakeそのものはコマンドライン上では正常動作し、その後makeすればビルドも成功、オブジェクトもできているので問題ないはず。VS Codeにインストールしたcmakeを制御するための拡張機能に問題があるようです。何か設定が足らない。

そうとう前から cmake にお世話になることは時々あったのです。しかし、cmake前提のシステムをビルドしたりするときに使わせてもらうだけで、自分ではcmakeを良く知りません。今回ちょっと調べたお陰で勉強にはなりましたが。その割には原因究明できず

cmake.launchTargetPath not found

が出力されます。もう一度、原典に戻るべし、と。例によってツラツラ遠くから眺めただけで、打ち捨てているドキュメントがあったと思い出しました。

Getting started with Raspberry Pi Pico.pdf

を読んでみます(該当しそうなところだけ。)直ぐに気づいたあるTIP(手元文書ではページ23)を引用させていただきましょう。

If you miss the popups, which will close again after a few seconds, you can configure the compiler by clicking on “No
Kit Selected” in the blue bottom bar of the VSCode window.

ほえほえ~、「ツールチェーンの選択画面」出ない出ないとおもっていましたが、VS Codeのボトムラインの中に手動操作のアイコンがあったのでした。

No Kit Selected

これが未選択の印。以下がその部分。

VSCodeBottomBarNo作業しているフォルダをいったん閉じ、再度開きなおしてから No Kit Selectedをクリックすれば、「ツールチェーンの選択画面」が出てまいりました。やったね。そこで GCC 7.3.1 arm-none-eabi を選択すれば、以下のようにボトムラインが変化します。VSCodeBottomBar

見れば、ボトムラインにはBuildとかデバッガとかのアイコンも出ている。ビルド時のDebug/Releaseの切り替えなどもここでできます。Build アイコンをクリックすれば、今まで not found とか言われて走らなかったビルド・プロセスが走りだし、ちゃんとオブジェクトファイルを生成、ノーエラー。

ビルドできるようになりました。つづいてデバッグを試みました。またもや障害ありです。CMakeの設定をちょっと修正したらOpenOCDとGDBが立ち上がるところまでは動いたのですが、なんだかな~。本日はこれ以上の気力がわかないのでここまでに致したいと思います。トホホ。

トホホな疑問(35) Mbed Studio、ビルドも実行もできるんですが。。。へ戻る

トホホな疑問(37) ラズパイPico、ラズパイ4からSWDデバッグ、信号線が長すぎた! へ進む