Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Moving to Rust 2024 breaks ESP32 builds #303

Open
sssilver opened this issue Feb 27, 2025 · 4 comments
Open

Moving to Rust 2024 breaks ESP32 builds #303

sssilver opened this issue Feb 27, 2025 · 4 comments

Comments

@sssilver
Copy link

Looks like TrouBLE has moved to the 2024 edition.

Unfortunately the ESP32 toolchain doesn't seem to support it yet, which means we need to change our rust-toolchain.toml from:

[toolchain]
channel = "esp"

to:

[toolchain]
channel = "1.85"

Completely breaking the build:

...
'esp32-s3' is not a recognized processor for this target (ignoring processor)
'esp32-s3' is not a recognized processor for this target (ignoring processor)
'esp32-s3' is not a recognized processor for this target (ignoring processor)
'esp32-s3' is not a recognized processor for this target (ignoring processor)
error[E0463]: can't find crate for `core`
  |
  = note: the `xtensa-esp32s3-espidf` target may not be installed
  = help: consider downloading the target with `rustup target add xtensa-esp32s3-espidf`

For more information about this error, try `rustc --explain E0463`.
error: could not compile `bitflags` (lib) due to 1 previous error
warning: build failed, waiting for other jobs to finish...

  $ rustup target add xtensa-esp32s3-espidf
error: toolchain '1.85-aarch64-apple-darwin' does not support target 'xtensa-esp32s3-espidf'
note: you can see a list of supported targets with `rustc --print=target-list`
note: if you are adding support for a new target to rustc itself, see https://rustc-dev-guide.rust-lang.org/building/new-target.html

What's the guidance in this situation?

@jamessizeland
Copy link
Collaborator

Apologies! We should have checked for that interaction. It didn't occur to me that it would do that.

I think if you can, pin your commit of trouble to rev="b6694cf00b602efe9c1c6e639e97218ebf623479"

Which was the last commit before 2024, and we'll get an idea from the esp team on when the Xtensa fork will support 2024.

I'll try this on my S3 when I get a chance.

@lulf
Copy link
Member

lulf commented Feb 27, 2025

Yeah, sorry for that. We should add xtensa to CI if we can.

@sssilver
Copy link
Author

Should we also introduce semantic versioning to help identify expected breaking changes, and start publishing to crates.io?

@lulf
Copy link
Member

lulf commented Feb 27, 2025

Thats the plan. Just waiting for security manager to land and writing a little more docs first.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants