Closed PlaneB closed 5 years ago
I had the same problem with using it for a project that I moved to the 2018 edition on stable.
Turns out, I had used it earlier, and to update the version of rust in the docker image, you need to pull an update.
docker pull ekidd/rust-musl-builder
After that it worked like a charm.
Yup! Please run docker pull ekidd/rust-musl-builder
to update your build image. Or you can hard-code a specific Rust release in your Dockerfile
:
FROM ekidd/rust-musl-builder:1.31.0
I try to re-build this image once every 6 weeks, generally on the day when a new stable Rust is released, and to tag the individual versions.
If you try this and still encounter this problem, please feel free to re-open this issue, or to file a new one.
First of all great work! The project is very much appreciated.
Anyway, building https://github.com/mariocao/actix-p2p outside of rust-musl-builder works without error on my Debian GNU/Linux 9 (stretch) 64 Bit machine with cargo 1.30.0 (36d96825d 2018-10-24) . However if I try to build inside the rust-musl-builder, I get the following errors:
error: cannot find derive macro
Message
in this scope --> src/codec.rs:8:17 | 8 | #[derive(Debug, Message)] | ^^^^^^^error: cannot find derive macro
Message
in this scope --> src/codec.rs:14:17 | 14 | #[derive(Debug, Message)] | ^^^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/client.rs:11:5 | 11 | use crate::codec::P2PCodec; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/client.rs:12:5 | 12 | use crate::session::Session; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/server.rs:17:5 | 17 | use crate::codec::P2PCodec; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/server.rs:18:5 | 18 | use crate::session::Session; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/session.rs:13:5 | 13 | use crate::codec::{P2PCodec, Request}; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/main.rs:14:5 | 14 | use crate::client::Client; | ^^^^^error[E0658]:
crate
in paths is experimental (see issue #45477) --> src/main.rs:15:5 | 15 | use crate::server::Server; | ^^^^^error: aborting due to 9 previous errors
For more information about this error, try
rustc --explain E0658
. error: Could not compileactix-p2p
.E0658:
An unstable feature was used.
Erroneous code example:
If you're using a stable or a beta version of rustc, you won't be able to use any unstable features. In order to do so, please switch to a nightly version of rustc (by using rustup).
If you're using a nightly version of rustc, just add the corresponding feature to be able to use it: