rust:rust_on_rp_install

文書の過去の版を表示しています。


Raspberry Pi Pico 開発環境のインストール

参考: Getting Started - rp-rs/rp-hal 翻訳

Rust を最新に更新する🤔

$ rustup self update

info: checking for self-update
  rustup unchanged - 1.26.0

$ rustup update stable

info: syncing channel updates for 'stable-x86_64-unknown-linux-gnu'
info: latest update on 2023-12-07, rust version 1.74.1 (a28077b28 2023-12-04)
info: downloading component 'rust-std' for 'arm-unknown-linux-gnueabihf'
 20.8 MiB /  20.8 MiB (100 %)  14.4 KiB/s in  1m 36s ETA:  0s
info: downloading component 'rust-src'
  2.4 MiB /   2.4 MiB (100 %) 472.4 KiB/s in  5s ETA:  0s
info: downloading component 'cargo'
  8.2 MiB /   8.2 MiB (100 %)   1.1 MiB/s in 28s ETA:  0s    
info: downloading component 'clippy'
info: downloading component 'rust-docs'
 14.4 MiB /  14.4 MiB (100 %)   3.9 MiB/s in  3s ETA:  0s
info: downloading component 'rust-std'
 25.8 MiB /  25.8 MiB (100 %)   3.4 MiB/s in  8s ETA:  0s
info: downloading component 'rustc'
 58.2 MiB /  58.2 MiB (100 %)   1.4 MiB/s in 38s ETA:  0s    
info: downloading component 'rustfmt'
  2.4 MiB /   2.4 MiB (100 %)   1.5 MiB/s in  1s ETA:  0s
info: removing previous version of component 'rust-std' for 'arm-unknown-linux-gnueabihf'
info: removing previous version of component 'rust-src'
info: removing previous version of component 'cargo'
info: removing previous version of component 'clippy'
info: removing previous version of component 'rust-docs'
info: removing previous version of component 'rust-std'
info: removing previous version of component 'rustc'
info: removing previous version of component 'rustfmt'
info: installing component 'rust-std' for 'arm-unknown-linux-gnueabihf'
 20.8 MiB /  20.8 MiB (100 %)   8.7 MiB/s in  3s ETA:  0s
info: installing component 'rust-src'
info: installing component 'cargo'
info: installing component 'clippy'
info: installing component 'rust-docs'
 14.4 MiB /  14.4 MiB (100 %)   4.6 MiB/s in  2s ETA:  0s
info: installing component 'rust-std'
 25.8 MiB /  25.8 MiB (100 %)   8.6 MiB/s in  3s ETA:  0s
info: installing component 'rustc'
 58.2 MiB /  58.2 MiB (100 %)   8.1 MiB/s in  7s ETA:  0s
info: installing component 'rustfmt'

  stable-x86_64-unknown-linux-gnu updated - rustc 1.74.1 (a28077b28 2023-12-04) (from rustc 1.74.0 (79e9716c9 2023-11-13))

info: checking for self-update

RP2040 ターゲットへクロスコンパイルするのに必要な thumbv6m-none-eabi ターゲットを追加する🤔

$ rustup target add thumbv6m-none-eabi

info: downloading component 'rust-std' for 'thumbv6m-none-eabi'
info: installing component 'rust-std' for 'thumbv6m-none-eabi'

RP2040 USB ブートローダー用の UF2 イメージ作成ツール (elf2uf2-rs) をインストールする🤔

$ cargo install elf2uf2-rs --locked

    Updating crates.io index
  Downloaded elf2uf2-rs v1.3.8
  Downloaded 1 crate (50.8 KB) in 1.86s
  Installing elf2uf2-rs v1.3.8
    Updating crates.io index
    Updating crates.io index
  Downloaded textwrap v0.16.0
  Downloaded clap_lex v0.2.4
  Downloaded unicode-ident v1.0.9
  Downloaded clap_derive v3.2.25
  Downloaded os_str_bytes v6.5.1
  Downloaded num_cpus v1.15.0
  Downloaded pbr v1.1.1
  Downloaded scopeguard v1.1.0
  Downloaded quote v1.0.28
  Downloaded proc-macro2 v1.0.60
  Downloaded clap v3.2.25
  Downloaded libc v0.2.146
  Downloaded zerocopy v0.6.1
  Downloaded zerocopy-derive v0.3.2
  Downloaded assert_into v1.1.0
  Downloaded bitflags v2.0.2
  Downloaded serialport v4.2.1
  Downloaded sysinfo v0.28.4
  Downloaded 18 crates (2.0 MB) in 2.09s
   Compiling autocfg v1.1.0
   Compiling libc v0.2.146
   Compiling proc-macro2 v1.0.60
   Compiling cfg-if v1.0.0
   Compiling quote v1.0.28
   Compiling crossbeam-utils v0.8.16
   Compiling unicode-ident v1.0.9
   Compiling version_check v0.9.4
   Compiling memoffset v0.9.0
   Compiling syn v1.0.109
   Compiling crossbeam-epoch v0.9.15
   Compiling scopeguard v1.1.0
   Compiling proc-macro-error-attr v1.0.4
   Compiling pkg-config v0.3.27
   Compiling libudev-sys v0.1.4
   Compiling crossbeam-channel v0.5.8
   Compiling proc-macro-error v1.0.4
   Compiling rayon-core v1.11.0
   Compiling crossbeam-deque v0.8.3
   Compiling num_cpus v1.15.0
   Compiling indexmap v1.9.3
   Compiling bitflags v1.3.2
   Compiling hashbrown v0.12.3
   Compiling os_str_bytes v6.5.1
   Compiling heck v0.4.1
   Compiling once_cell v1.18.0
   Compiling either v1.8.1
   Compiling static_assertions v1.1.0
   Compiling nix v0.26.2
   Compiling rayon v1.7.0
   Compiling clap_lex v0.2.4
   Compiling zerocopy-derive v0.3.2
   Compiling clap_derive v3.2.25
   Compiling libudev v0.3.0
   Compiling atty v0.2.14
   Compiling termcolor v1.2.0
   Compiling byteorder v1.4.3
   Compiling textwrap v0.16.0
   Compiling bitflags v2.0.2
   Compiling strsim v0.10.0
   Compiling serialport v4.2.1
   Compiling zerocopy v0.6.1
   Compiling sysinfo v0.28.4
   Compiling pbr v1.1.1
   Compiling assert_into v1.1.0
   Compiling clap v3.2.25
   Compiling elf2uf2-rs v1.3.8
    Finished release [optimized] target(s) in 50.34s
  Installing /home/tomoyan/.cargo/bin/elf2uf2-rs
   Installed package `elf2uf2-rs v1.3.8` (executable `elf2uf2-rs`)

IEEE 1149.1標準 JTAGインタフェースで SWD ピンを使用してフラッシュする場合は probe-rs をインストールする🤔

$ cargo install probe-rs --features cli --locked

    Updating crates.io index
  Downloaded probe-rs v0.21.1
  Downloaded 1 crate (2.1 MB) in 2.19s
  Installing probe-rs v0.21.1
    Updating crates.io index
warning: package `ahash v0.7.6` in Cargo.lock is yanked in registry `crates-io`, consider running without --locked
    Updating crates.io index
  Downloaded Inflector v0.11.4
  Downloaded cassowary v0.3.0
  Downloaded inlinable_string v0.1.15
  Downloaded syn v2.0.32
  Downloaded h2 v0.3.20
  Downloaded sharded-slab v0.1.4
  Downloaded defmt-parser v0.3.3
  Downloaded git-version-macro v0.3.5
  Downloaded scroll_derive v0.11.1
  Downloaded tracing-serde v0.1.3
  Downloaded utf8-width v0.1.6
  Downloaded schemafy_core v0.6.0
  Downloaded termtree v0.4.1
  Downloaded defmt-json-schema v0.1.0
  Downloaded matchers v0.1.0
  Downloaded git-version v0.3.5
  Downloaded serde_repr v0.1.15
  Downloaded proc-macro2-diagnostics v0.10.1
  Downloaded byte-unit v4.0.19
  Downloaded uncased v0.9.9
  Downloaded schemafy_lib v0.6.0
  Downloaded ihex v3.0.0
  Downloaded slab v0.4.8
  Downloaded pretty_env_logger v0.5.0
  Downloaded time-macros v0.2.10
  Downloaded overload v0.1.1
  Downloaded dunce v1.0.4
  Downloaded httpdate v1.0.2
  Downloaded serde_plain v1.0.1
  Downloaded jep106 v0.2.8
  Downloaded tracing-log v0.1.3
  Downloaded pear v0.2.7
  Downloaded nu-ansi-term v0.46.0
  Downloaded bytemuck_derive v1.4.1
  Downloaded boolean_expression v0.3.11
  Downloaded ahash v0.7.6
  Downloaded csv-core v0.1.10
  Downloaded pin-project-lite v0.2.12
  Downloaded scroll v0.11.0
  Downloaded xmlparser v0.13.5
  Downloaded pear_codegen v0.2.7
  Downloaded cargo_toml v0.16.3
  Downloaded svd-rs v0.14.2
  Downloaded jaylink v0.3.0
  Downloaded roxmltree v0.18.0
  Downloaded thiserror-core v1.0.38
  Downloaded itm v0.9.0-rc.1
  Downloaded thiserror-core-impl v1.0.38
  Downloaded svg v0.14.0
  Downloaded bitmatch v0.1.1
  Downloaded strum_macros v0.25.1
  Downloaded uriparse v0.6.4
  Downloaded kmp v0.1.1
  Downloaded plain v0.2.3
  Downloaded bytesize v1.2.0
  Downloaded xmas-elf v0.9.0
  Downloaded svd-parser v0.14.2
  Downloaded probe-rs-target v0.21.1
  Downloaded toml v0.8.2
  Downloaded openssl-sys v0.9.90
  Downloaded serde_yaml v0.9.25
  Downloaded unsafe-libyaml v0.2.9
  Downloaded indoc v2.0.3
  Downloaded figment v0.10.10
  Downloaded defmt-decoder v0.3.9
  Downloaded ron v0.8.1
  Downloaded base64 v0.21.4
  Downloaded cpp_demangle v0.4.2
  Downloaded cargo_metadata v0.18.0
  Downloaded yansi v1.0.0-rc
  Downloaded uf2-decode v0.2.0
  Downloaded toml_edit v0.20.2
  Downloaded rusb v0.9.3
  Downloaded itertools v0.9.0
  Downloaded unicode-linebreak v0.1.4
  Downloaded regex-automata v0.1.10
  Downloaded schemafy v0.6.0
  Downloaded capstone v0.11.0
  Downloaded time v0.3.23
  Downloaded itertools v0.11.0
  Downloaded goblin v0.7.1
  Downloaded portable-atomic v1.4.1
  Downloaded tracing-subscriber v0.3.17
  Downloaded gdbstub v0.6.6
  Downloaded openssl v0.10.55
  Downloaded libusb1-sys v0.6.4
  Downloaded regex-syntax v0.6.29
  Downloaded ratatui v0.23.0
  Downloaded hidapi v2.4.1
  Downloaded csv v1.2.2
  Downloaded encoding_rs v0.8.32
  Downloaded capstone-sys v0.15.0
  Downloaded 92 crates (12.1 MB) in 6.43s (largest was `capstone-sys` at 4.9 MB)
   Compiling proc-macro2 v1.0.66
   Compiling unicode-ident v1.0.11
   Compiling serde v1.0.188
   Compiling libc v0.2.147
   Compiling memchr v2.5.0
   Compiling cfg-if v1.0.0
   Compiling autocfg v1.1.0
   Compiling syn v1.0.109
   Compiling cc v1.0.79
   Compiling version_check v0.9.4
   Compiling quote v1.0.31
   Compiling syn v2.0.32
   Compiling pkg-config v0.3.27
   Compiling once_cell v1.18.0
   Compiling itoa v1.0.9
   Compiling rustix v0.38.4
   Compiling aho-corasick v1.0.2
   Compiling regex-syntax v0.7.4
   Compiling linux-raw-sys v0.4.3
   Compiling regex-automata v0.3.3
   Compiling serde_derive v1.0.188
   Compiling fnv v1.0.7
   Compiling bitflags v1.3.2
   Compiling pin-project-lite v0.2.12
   Compiling thiserror v1.0.49
   Compiling ryu v1.0.15
   Compiling thiserror-impl v1.0.49
   Compiling regex v1.9.1
   Compiling ahash v0.7.6
   Compiling equivalent v1.0.1
   Compiling hashbrown v0.14.0
   Compiling log v0.4.20
   Compiling bitflags v2.3.3
   Compiling mio v0.8.8
   Compiling getrandom v0.2.10
   Compiling indexmap v2.0.0
   Compiling tracing-core v0.1.31
   Compiling is-terminal v0.4.9
   Compiling openssl-sys v0.9.90
   Compiling lock_api v0.4.10
   Compiling scopeguard v1.2.0
   Compiling byteorder v1.4.3
   Compiling futures-core v0.3.28
   Compiling bytes v1.4.0
   Compiling static_assertions v1.1.0
   Compiling heck v0.4.1
   Compiling adler v1.0.2
   Compiling smallvec v1.11.0
   Compiling rustversion v1.0.14
   Compiling miniz_oxide v0.7.1
   Compiling lazy_static v1.4.0
   Compiling semver v1.0.18
   Compiling unicode-width v0.1.10
   Compiling typenum v1.16.0
   Compiling hashbrown v0.12.3
   Compiling serde_spanned v0.6.3
   Compiling toml_datetime v0.6.3
   Compiling tracing-attributes v0.1.26
   Compiling socket2 v0.5.3
   Compiling num_cpus v1.16.0
   Compiling generic-array v0.14.7
   Compiling slab v0.4.8
   Compiling serde_json v1.0.107
   Compiling ident_case v1.0.1
   Compiling futures-task v0.3.28
   Compiling winnow v0.5.0
   Compiling radium v0.7.0
   Compiling strsim v0.10.0
   Compiling crc32fast v1.3.2
   Compiling either v1.9.0
   Compiling darling_core v0.14.4
   Compiling tracing v0.1.37
   Compiling tokio v1.32.0
   Compiling unicode-linebreak v0.1.4
   Compiling indexmap v1.9.3
   Compiling num-traits v0.2.17
   Compiling thiserror-core v1.0.38
   Compiling foreign-types-shared v0.1.1
   Compiling openssl v0.10.55
   Compiling proc-macro-hack v0.5.20+deprecated
   Compiling stable_deref_trait v1.2.0
   Compiling tap v1.0.1
   Compiling futures-util v0.3.28
   Compiling wyz v0.5.1
   Compiling http v0.2.9
   Compiling toml_edit v0.19.15
   Compiling foreign-types v0.3.2
   Compiling rustc_version v0.4.0
   Compiling darling_macro v0.14.4
   Compiling thiserror-core-impl v1.0.38
   Compiling openssl-macros v0.1.1
   Compiling libusb1-sys v0.6.4
   Compiling libudev-sys v0.1.4
   Compiling backtrace v0.3.68
   Compiling proc-macro2-diagnostics v0.10.1
   Compiling gimli v0.27.3
   Compiling futures-channel v0.3.28
   Compiling httparse v1.8.0
   Compiling futures-io v0.3.28
   Compiling utf8parse v0.2.1
   Compiling signal-hook v0.3.17
   Compiling pin-utils v0.1.0
   Compiling futures-sink v0.3.28
   Compiling native-tls v0.2.11
   Compiling parking_lot_core v0.9.8
   Compiling funty v2.0.0
   Compiling rustc-demangle v0.1.23
   Compiling tinyvec_macros v0.1.1
   Compiling tinyvec v1.6.0
   Compiling addr2line v0.20.0
   Compiling bitvec v1.0.1
   Compiling tokio-util v0.7.8
   Compiling schemafy_core v0.6.0
   Compiling flate2 v1.0.27
   Compiling darling v0.14.4
   Compiling heapless v0.7.16
   Compiling proc-macro-crate v1.3.1
   Compiling Inflector v0.11.4
   Compiling uriparse v0.6.4
   Compiling twox-hash v1.6.3
   Compiling object v0.31.1
   Compiling signal-hook-registry v1.4.1
   Compiling paste v1.0.14
   Compiling try-lock v0.2.4
   Compiling base64 v0.21.4
   Compiling openssl-probe v0.1.5
   Compiling smawk v0.3.1
   Compiling percent-encoding v2.3.0
   Compiling anyhow v1.0.75
   Compiling yansi v1.0.0-rc
   Compiling binrw_derive v0.12.0
   Compiling form_urlencoded v1.2.0
   Compiling want v0.3.1
   Compiling schemafy_lib v0.6.0
   Compiling ruzstd v0.4.0
   Compiling git-version-macro v0.3.5
   Compiling deku_derive v0.16.0
   Compiling h2 v0.3.20
   Compiling unicode-normalization v0.1.22
   Compiling anstyle-parse v0.2.1
   Compiling crypto-common v0.1.6
   Compiling block-buffer v0.10.4
   Compiling http-body v0.4.5
   Compiling toml_edit v0.20.2
   Compiling itertools v0.9.0
   Compiling strum_macros v0.24.3
   Compiling strum_macros v0.25.1
   Compiling spin v0.9.8
   Compiling nix v0.26.2
   Compiling hash32 v0.2.1
   Compiling jep106 v0.2.8
   Compiling bytemuck_derive v1.4.1
   Compiling hidapi v2.4.1
   Compiling csv-core v0.1.10
   Compiling capstone-sys v0.15.0
   Compiling socket2 v0.4.9
   Compiling uncased v0.9.9
   Compiling owo-colors v3.5.0
   Compiling anstyle v1.0.1
   Compiling time-core v0.1.1
   Compiling anstyle-query v1.0.0
   Compiling unicode-bidi v0.3.13
   Compiling httpdate v1.0.2
   Compiling portable-atomic v1.4.1
   Compiling unsafe-libyaml v0.2.9
   Compiling tower-service v0.3.2
   Compiling is_ci v1.1.1
   Compiling cpp_demangle v0.4.2
   Compiling colorchoice v1.0.0
   Compiling regex-syntax v0.6.29
   Compiling rusb v0.9.3
   Compiling binrw v0.12.0
   Compiling camino v1.1.6
   Compiling boolean_expression v0.3.11
   Compiling anstream v0.5.0
   Compiling supports-color v2.0.0
   Compiling hyper v0.14.27
   Compiling serde_yaml v0.9.25
   Compiling regex-automata v0.1.10
   Compiling idna v0.4.0
   Compiling probe-rs-target v0.21.1
   Compiling time-macros v0.2.10
   Compiling rand_core v0.6.4
   Compiling bytemuck v1.14.0
   Compiling csv v1.2.2
   Compiling strum v0.25.0
   Compiling strum v0.24.1
   Compiling toml v0.8.2
   Compiling digest v0.10.7
   Compiling deku v0.16.0
   Compiling parking_lot v0.12.1
   Compiling libudev v0.3.0
   Compiling git-version v0.3.5
   Compiling backtrace-ext v0.2.1
   Compiling schemafy v0.6.0
   Compiling object v0.32.1
   Compiling signal-hook-mio v0.2.3
   Compiling tokio-native-tls v0.3.1
   Compiling pear_codegen v0.2.7
   Compiling textwrap v0.15.2
   Compiling parse_int v0.6.0
   Compiling gimli v0.28.0
   Compiling nibble_vec v0.1.0
   Compiling supports-hyperlinks v2.1.0
   Compiling supports-unicode v2.0.0
   Compiling bincode v1.3.3
   Compiling serde_plain v1.0.1
   Compiling scroll_derive v0.11.1
   Compiling miette-derive v5.10.0
   Compiling terminal_size v0.1.17
   Compiling figment v0.10.10
   Compiling unicode-segmentation v1.10.1
   Compiling option-ext v0.2.0
   Compiling endian-type v0.1.2
   Compiling clap_lex v0.5.0
   Compiling cpufeatures v0.2.9
   Compiling array-init v2.1.0
   Compiling minimal-lexical v0.2.1
   Compiling overload v0.1.1
   Compiling ppv-lite86 v0.2.17
   Compiling xmlparser v0.13.5
   Compiling md5 v0.7.0
   Compiling inlinable_string v0.1.15
   Compiling humantime v2.1.0
   Compiling zero v0.1.3
   Compiling num_threads v0.1.6
   Compiling termcolor v1.2.0
   Compiling env_logger v0.10.0
   Compiling time v0.3.23
   Compiling xmas-elf v0.9.0
   Compiling miette v5.10.0
   Compiling pear v0.2.7
   Compiling roxmltree v0.18.0
   Compiling esp-idf-part v0.4.1
   Compiling rand_chacha v0.3.1
   Compiling nu-ansi-term v0.46.0
   Compiling itertools v0.11.0
   Compiling nom v7.1.3
   Compiling sha2 v0.10.8
   Compiling clap_builder v4.4.0
   Compiling radix_trie v0.2.1
   Compiling dirs-sys v0.4.1
   Compiling scroll v0.11.0
   Compiling probe-rs v0.21.1
   Compiling toml v0.7.8
   Compiling hyper-tls v0.5.0
   Compiling crossterm v0.27.0
   Compiling serialport v4.2.2
   Compiling url v2.4.0
   Compiling matchers v0.1.0
   Compiling bitmatch v0.1.1
   Compiling serde_urlencoded v0.7.1
   Compiling console v0.15.7
   Compiling tracing-log v0.1.3
   Compiling sharded-slab v0.1.4
   Compiling colored v2.0.4
   Compiling svd-rs v0.14.2
   Compiling clap_derive v4.4.0
   Compiling tracing-serde v0.1.3
   Compiling fd-lock v3.0.13
   Compiling defmt-parser v0.3.3
   Compiling defmt-json-schema v0.1.0
   Compiling cargo-platform v0.1.3
   Compiling serde_repr v0.1.15
   Compiling thread_local v1.1.7
   Compiling memmap2 v0.5.10
   Compiling encoding_rs v0.8.32
   Compiling mime v0.3.17
   Compiling managed v0.8.0
   Compiling number_prefix v0.4.0
   Compiling plain v0.2.3
   Compiling indoc v2.0.3
   Compiling slip-codec v0.3.4
   Compiling fallible-iterator v0.3.0
   Compiling cassowary v0.3.0
   Compiling ipnet v2.8.0
   Compiling home v0.5.5
   Compiling dissimilar v1.0.7
   Compiling utf8-width v0.1.6
   Compiling byte-unit v4.0.19
   Compiling defmt-decoder v0.3.9
   Compiling rustyline v12.0.0
   Compiling reqwest v0.11.22
   Compiling capstone v0.11.0
   Compiling ratatui v0.23.0
   Compiling addr2line v0.21.0
   Compiling espflash v2.1.0
   Compiling indicatif v0.17.7
   Compiling goblin v0.7.1
   Compiling gdbstub v0.6.6
   Compiling tracing-subscriber v0.3.17
   Compiling clap v4.4.0
   Compiling cargo_metadata v0.18.0
   Compiling svd-parser v0.14.2
   Compiling itm v0.9.0-rc.1
   Compiling enum-primitive-derive v0.2.2
   Compiling jaylink v0.3.0
   Compiling directories v5.0.1
   Compiling rand v0.8.5
   Compiling pretty_env_logger v0.5.0
   Compiling cargo_toml v0.16.3
   Compiling textwrap v0.16.0
   Compiling ron v0.8.1
   Compiling sanitize-filename v0.5.0
   Compiling terminal_size v0.3.0
   Compiling uf2-decode v0.2.0
   Compiling kmp v0.1.1
   Compiling termtree v0.4.1
   Compiling ihex v3.0.0
   Compiling bytesize v1.2.0
   Compiling dunce v1.0.4
   Compiling svg v0.14.0
   Compiling bitfield v0.14.0
    Finished release [optimized] target(s) in 9m 56s
  Installing /home/tomoyan/.cargo/bin/cargo-embed
  Installing /home/tomoyan/.cargo/bin/cargo-flash
  Installing /home/tomoyan/.cargo/bin/probe-rs
   Installed package `probe-rs v0.21.1` (executables `cargo-embed`, `cargo-flash`, `probe-rs`)

  • rust/rust_on_rp_install.1702616199.txt.gz
  • 最終更新: 2023/12/15 13:56
  • by ともやん