Skip to content

pop build error if user's Rust version doesn't match what's expected #803

Description

@tsenovilla

Running pop build on a simple flipper contract I'm getting this error if my local Rust version isn't what the contract expects (expects 1.91.1, locally I had 1.90)

error: failed to run `rustc` to learn about 
target-specific information

Caused by:
  process didn't exit successfully: 
`/Users/tomas/Programacion/my_contract/target/ink/rustc_wrapper/target/release/rustc_wrapper 
/Users/tomas/.rustup/toolchains/1.90-x86_64-apple-darwin/bin/rustc - --crate-name ___ 
--print=file-names -Clinker-plugin-lto -Clink-arg=-zstack-size=4096 --cfg substrate_runtime 
--cfg 'ink_abi="ink"' --check-cfg 'cfg(ink_abi,values("ink","sol","all"))' --target 
/Users/tomas/Programacion/my_contract/target/ink/riscv64emac-unknown-none-polkavm.json 
--crate-type bin --crate-type rlib --crate-type dylib --crate-type cdylib --crate-type 
staticlib --crate-type proc-macro --print=sysroot --print=split-debuginfo --print=crate-name 
--print=cfg -Wwarnings` (exit status: 1)
  --- stderr
  error: error loading target specification: target-pointer-width: invalid type: integer `64`,
 expected a string at line 16 column 28
    |
    = help: run `rustc --print target-list` for a list of built-in targets 

Is this expected? I mean, should we use the user's rust local config and panic if something goes wrong or should we try to update it? If the answer is the former, maybe we could try to give a better error message, this one may be chaotic if you don't know what's going on

Metadata

Metadata

Assignees

Labels

bugSomething isn't workinghigh priorityThis issue is a high priority

Type

Fields

No fields configured for Bug.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions