无法在 Mac m1 上遵循 yew 教程 - 使用未声明的类型“Vec”

2023-12-28

每当我跑步时trunk build or cargo run --target=wasm32-unknown-unknown我收到一堆范围错误。

我已经跑了rustup target add wasm32-unknown-unknown and cargo install --locked wasm-bindgen-cli,但仍然没有运气。

这些错误消息是什么意思?

[编辑] 输出相当长,但它的开头是这样的:

[2m2022-06-06T01:51:52.351114Z[0m [32m INFO[0m ???? starting build
[2m2022-06-06T01:51:52.351741Z[0m [32m INFO[0m spawning asset pipelines
[2m2022-06-06T01:51:52.390738Z[0m [32m INFO[0m building yew-app
   Compiling ryu v1.0.10
   Compiling itoa v1.0.2
   Compiling cfg-if v1.0.0
   Compiling hashbrown v0.11.2
   Compiling slab v0.4.6
   Compiling scoped-tls-hkt v0.1.2
   Compiling serde v1.0.137
   Compiling thiserror v1.0.31
error[E0463]: can't find crate for `core`
  |
  = note: the `wasm32-unknown-unknown` target may not be installed
  = help: consider downloading the target with `rustup target add wasm32-unknown-unknown`

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

For more information about this error, try `rustc --explain E0463`.
error: could not compile `cfg-if` due to 2 previous errors
warning: build failed, waiting for other jobs to finish...
error[E0463]: can't find crate for `core`
  --> /Users/patrickstivalchaerke/.cargo/registry/src/github.com-1ecc6299db9ec823/itoa-1.0.2/src/lib.rs:44:5
   |
44 | use core::mem::{self, MaybeUninit};
   |     ^^^^ can't find crate
   |
   = note: the `wasm32-unknown-unknown` target may not be installed
   = help: consider downloading the target with `rustup target add wasm32-unknown-unknown`

error[E0463]: can't find crate for `std`
  |
  = note: the `wasm32-unknown-unknown` target may not be installed
  = help: consider downloading the target with `rustup target add wasm32-unknown-unknown`

error[E0463]: can't find crate for `core`
  --> /Users/patrickstivalchaerke/.cargo/registry/src/github.com-1ecc6299db9ec823/itoa-1.0.2/src/lib.rs:45:5
   |
45 | use core::{ptr, slice, str};
   |     ^^^^ can't find crate
   |
   = note: the `wasm32-unknown-unknown` target may not be installed
   = help: consider downloading the target with `rustup target add wasm32-unknown-unknown`

error: cannot find macro `debug_assert_eq` in this scope
  --> /Users/patrickstivalchaerke/.cargo/registry/src/github.com-1ecc6299db9ec823/itoa-1.0.2/src/udiv128.rs:39:5
   |
39 |     debug_assert_eq!(quot, n / d as u128);
   |     ^^^^^^^^^^^^^^^

error: cannot find macro `debug_assert_eq` in this scope
  --> /Users/patrickstivalchaerke/.cargo/registry/src/github.com-1ecc6299db9ec823/itoa-1.0.2/src/udiv128.rs:40:5
   |
40 |     debug_assert_eq!(rem as u128, n % d as u128);
   |     ^^^^^^^^^^^^^^^

error[E0463]: can't find crate for `core`
 --> /Users/patrickstivalchaerke/.cargo/registry/src/github.com-1ecc6299db9ec823/ryu-1.0.10/src/buffer/mod.rs:2:5
  |
2 | use core::mem::MaybeUninit;
  |     ^^^^ can't find crate
  |
  = note: the `wasm32-unknown-unknown` target may not be installed
  = help: consider downloading the target with `rustup target add wasm32-unknown-unknown`

error[E0463]: can't find crate for `core`
 --> /Users/patrickstivalchaerke/.cargo/registry/src/github.com-1ecc6299db9ec823/ryu-1.0.10/src/buffer/mod.rs:3:5
  |
3 | use core::{slice, str};
  |     ^^^^ can't find crate
  |
  = note: the `wasm32-unknown-unknown` target may not be installed
  = help: consider downloading the target with `rustup target add wasm32-unknown-unknown`

error[E0463]: can't find crate for `core`
  --> /Users/patrickstivalchaerke/.cargo/registry/src/github.com-1ecc6299db9ec823/ryu-1.0.10/src/d2s.rs:27:5
   |
27 | use core::mem::MaybeUninit;
   |     ^^^^ can't find crate
   |
   = note: the `wasm32-unknown-unknown` target may not be installed
   = help: consider downloading the target with `rustup target add wasm32-unknown-unknown`

error[E0433]: failed to resolve: use of undeclared type `MaybeUninit`
  --> /Users/patrickstivalchaerke/.cargo/registry/src/github.com-1ecc6299db9ec823/itoa-1.0.2/src/lib.rs:80:22
   |
80 |         let bytes = [MaybeUninit::<u8>::uninit(); I128_MAX_LEN];
   |                      ^^^^^^^^^^^ use of undeclared type `MaybeUninit`

[Edit 2]

我看到输出的开头表示我应该考虑安装目标 wasm32-unknown-unknown。

但我确实安装了它。另一个终端输出:

yew-app git:(master) ✗ rustup target add wasm32-unknown-unknown
info: component 'rust-std' for target 'wasm32-unknown-unknown' is up to date

yew-app git:(master) ✗ rustc -V
rustc 1.59.0

实际上,我分别安装了 homebrew 的 rustup 和 rustup 。我猜他们在一起玩得不好。

我从brew中卸载了rust,重新安装了rustup,安装了wasm-bindgen-cli,添加了目标并且它起作用了。

我运行过的命令列表:

rustup target remove wasm32-unknown-unknown
rustup self uninstall
brew uninstall rust
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
rustup target add wasm32-unknown-unknown
cargo install --locked trunk
cargo clean
trunk clean
cargo install --locked wasm-bindgen-cli

# And finally
trunk serve
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

无法在 Mac m1 上遵循 yew 教程 - 使用未声明的类型“Vec” 的相关文章

随机推荐