Found crate `seahorse` compiled by an incompatible version of rust

After updating rust nightly via rustup and updating the rust-toolchain file, one of my dependencies (seahorse) keeps getting this error (other dependencies seem ok, though it seems to happen at the last step in compilation after all dependencies are compiled, so it seems to be more of a linking error, and maybe seahorse just happens to be the first to call the issue):

   Compiling seahorse v1.1.1
     Running `rustc --crate-name seahorse --edition=2018 /home/brandon/.cargo/registry/src/github.com-1ecc6299db9ec823/seahorse-1.1.1/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --cr
ate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debuginfo=2 -C metadata=e0614dfb7b63521a -C extra-filename=-e0614dfb7b63521a --out-dir /home/brandon/workspace/SoftwareTools/target/debug/deps -L
 dependency=/home/brandon/workspace/SoftwareTools/target/debug/deps --cap-lints allow`



error[E0514]: found crate `seahorse` compiled by an incompatible version of rustc
 --> src/copying.rs:4:5
  |
4 | use seahorse::{App, Command, Context};
  |     ^^^^^^^^
  |
  = help: please recompile that crate using this compiler (rustc 1.52.0-nightly (f98721f88 2021-03-10))
  = note: the following crate versions were found:
          crate `seahorse` compiled by rustc 1.50.0 (cb75ad5db 2021-02-10): /home/brandon/workspace/SoftwareTools/target/debug/deps/libseahorse-e0614dfb7b63521a.rmeta

error: aborting due to previous error

error: could not compile `sfw-tools`

Caused by:
  process didn't exit successfully: `rustc --crate-name sfwtools --edition=2018 src/lib.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type lib --emit=dep-info,metadata,link -C embed-bitcode=no -C debuginfo=2 -C metadata=f29171e759a6960d -C extra-filename=-f29171e759a6960d --out-dir /home/brandon/workspace/SoftwareTools/target/debug/deps -C incremental=/home/brandon/workspace/SoftwareTools/target/debug/incremental -L dependency=/home/brandon/workspace/SoftwareTools/target/debug/deps --extern fp_core=/home/brandon/workspace/SoftwareTools/target/debug/deps/libfp_core-1a84d2d8da4c781a.rmeta --extern seahorse=/home/brandon/workspace/SoftwareTools/target/debug/deps/libseahorse-e0614dfb7b63521a.rmeta --extern tailcall=/home/brandon/workspace/SoftwareTools/target/debug/deps/libtailcall-45f74ea2ef6f9921.rmeta` (exit code: 1)

[nix-shell:~/workspace/SoftwareTools]$ rustup show
Default host: x86_64-unknown-linux-gnu
rustup home:  /home/brandon/.rustup

installed toolchains
--------------------

stable-x86_64-unknown-linux-gnu (default)
nightly-2020-12-25-x86_64-unknown-linux-gnu
nightly-2021-01-27-x86_64-unknown-linux-gnu
nightly-2021-03-11-x86_64-unknown-linux-gnu
nightly-x86_64-unknown-linux-gnu
1.15.0-x86_64-unknown-linux-gnu

active toolchain
----------------

nightly-2021-03-11-x86_64-unknown-linux-gnu (overridden by '/home/brandon/workspace/SoftwareTools/rust-toolchain')
rustc 1.52.0-nightly (f98721f88 2021-03-10)

I'll note thatn running cargo clean did not seem to help, nor did running:

rm -fr target/debug/deps

What about rm -rf target

It seems that the same occurs:

$ rm -fr target/

[nix-shell:~/workspace/SoftwareTools]$ cargo build
   Compiling proc-macro2 v1.0.24
   Compiling unicode-xid v0.2.1
   Compiling syn v1.0.62
   Compiling either v1.6.1
   Compiling seahorse v1.1.1
   Compiling itertools v0.8.2
   Compiling quote v1.0.9
   Compiling fp-core v0.1.9
   Compiling tailcall-impl v0.1.6
   Compiling tailcall v0.1.6
   Compiling sfw-tools v0.2.1 (/home/brandon/workspace/SoftwareTools)
error[E0514]: found crate `seahorse` compiled by an incompatible version of rustc
 --> src/copying.rs:4:5
  |
4 | use seahorse::{App, Command, Context};
  |     ^^^^^^^^
  |
  = help: please recompile that crate using this compiler (rustc 1.52.0-nightly (f98721f88 2021-03-10))
  = note: the following crate versions were found:
          crate `seahorse` compiled by rustc 1.50.0 (cb75ad5db 2021-02-10): /home/brandon/workspace/SoftwareTools/target/debug/deps/libseahorse-e0614dfb7b63521a.rmeta

error: aborting due to previous error

error: could not compile `sfw-tools`

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

I'm not sure what was confusing cargo, but deleting ~/.rustup and reinstalling the toolchain specified by my rust-toolchain file resolved the issue.

1 Like

This topic was automatically closed 90 days after the last reply. We invite you to open a new topic if you have further questions or comments.