トラブルシューティング

cargo-embedの問題

cargo-embedに関した問題のほとんどは、Embed.tomlで間違ったチップを選択しているか、(Linuxの場合)udevルールを適切にインストールしていないかが原因です。ですから、その両方が正しく設定されていることを確認してください。

それでもまだうまくいかないときは、discovery issue trackerでイシューを立ててください。またRust Embedded matrix channelprobe-rs matrix channelを訪れて、そこで質問していただいてもよいです。

Cargoの問題

"can't find crate for core"

症状

   Compiling volatile-register v0.1.2
   Compiling rlibc v1.0.0
   Compiling r0 v0.1.0
error[E0463]: can't find crate for `core`

error: aborting due to previous error

error[E0463]: can't find crate for `core`

error: aborting due to previous error

error[E0463]: can't find crate for `core`

error: aborting due to previous error

Build failed, waiting for other jobs to finish...
Build failed, waiting for other jobs to finish...
error: Could not compile `r0`.

To learn more, run the command again with --verbose.

原因

お使いのマイクロコントローラ向けのターゲットがインストールされていません。(v2にはthumbv7em-none-eabihf、v1にはthumbv6m-none-eabi

解決策

適切なターゲットをインストールします。

# micro:bit v2
$ rustup target add thumbv7em-none-eabihf

# micro:bit v1
$ rustup target add thumbv6m-none-eabi