Build failed: Could not compile `std`. (E0597)
Created by: Nickforall
I'm not sure if this is an issue with the current build of rust, or redox.
Reproduction: make all
on the latest nightly build
Expected behavior: Redox successfully compiling
Actual behavior:
cd kernel && xargo clean
rm -rf build/initfs
cargo run --manifest-path installer/Cargo.toml -- --cookbook=cookbook initfs.toml
Finished dev [unoptimized + debuginfo] target(s) in 0.0 secs
Running `installer/target/debug/redox_installer --cookbook=cookbook initfs.toml`
Install Config {
general: GeneralConfig {
prompt: false,
sysroot: Some(
"build/initfs"
)
},
packages: {
"drivers": PackageConfig {
version: None,
git: None,
path: None
},
"init": PackageConfig {
version: None,
git: None,
path: None
},
"redoxfs": PackageConfig {
version: None,
git: None,
path: None
}
},
files: [
FileConfig {
path: "/etc/init.rc",
data: "export PATH /bin\nexport TMPDIR /tmp\nvesad T T G\nstdio display:1\nps2d\npcid /etc/pcid/initfs.toml\nredoxfs disk:0 file\ncd file:\nrun.d /etc/init.d\n"
}
],
users: {}
}
Create directory /home/nick/programming/redox/build/initfs/
repo - building drivers
cook - drivers build
Updating registry `https://github.com/rust-lang/crates.io-index`
Compiling libc v0.0.0 (file:///home/nick/programming/redox/rust/src/rustc/libc_shim)
Compiling gcc v0.3.51
Compiling libc v0.2.29
Compiling unwind v0.0.0 (file:///home/nick/programming/redox/rust/src/libunwind)
Compiling core v0.0.0 (file:///home/nick/programming/redox/rust/src/libcore)
Compiling filetime v0.1.10
Compiling build_helper v0.1.0 (file:///home/nick/programming/redox/rust/src/build_helper)
Compiling compiler_builtins v0.0.0 (file:///home/nick/programming/redox/rust/src/rustc/compiler_builtins_shim)
Compiling std v0.0.0 (file:///home/nick/programming/redox/rust/src/libstd)
Compiling rand v0.0.0 (file:///home/nick/programming/redox/rust/src/librand)
Compiling std_unicode v0.0.0 (file:///home/nick/programming/redox/rust/src/libstd_unicode)
Compiling panic_abort v0.0.0 (file:///home/nick/programming/redox/rust/src/libpanic_abort)
Compiling alloc v0.0.0 (file:///home/nick/programming/redox/rust/src/liballoc)
Compiling collections v0.0.0 (file:///home/nick/programming/redox/rust/src/libcollections)
Compiling alloc_system v0.0.0 (file:///home/nick/programming/redox/rust/src/liballoc_system)
Compiling panic_unwind v0.0.0 (file:///home/nick/programming/redox/rust/src/libpanic_unwind)
warning: dropping unsupported crate type `dylib` for target `x86_64-unknown-redox`
error[E0597]: borrowed value does not live long enough
--> /home/nick/programming/redox/rust/src/libstd/thread/local.rs:178:17
|
178 | __KEY.get()
| ^^^^^ does not live long enough
179 | }
| - temporary value only lives until here
|
::: /home/nick/programming/redox/rust/src/libstd/collections/hash/map.rs
|
2356 | / thread_local!(static KEYS: Cell<(u64, u64)> = {
2357 | | let r = rand::OsRng::new();
2358 | | let mut r = r.expect("failed to create an OS RNG");
2359 | | Cell::new((r.gen(), r.gen()))
2360 | | });
| |___________- in this macro invocation
|
= note: borrowed value must be valid for the static lifetime...
error[E0597]: borrowed value does not live long enough
--> /home/nick/programming/redox/rust/src/libstd/thread/local.rs:178:17
|
178 | __KEY.get()
| ^^^^^ does not live long enough
179 | }
| - temporary value only lives until here
|
::: /home/nick/programming/redox/rust/src/libstd/io/stdio.rs
|
23 | / thread_local! {
24 | | static LOCAL_STDOUT: RefCell<Option<Box<Write + Send>>> = {
25 | | RefCell::new(None)
26 | | }
27 | | }
| |_- in this macro invocation
|
= note: borrowed value must be valid for the static lifetime...
error[E0597]: borrowed value does not live long enough
--> /home/nick/programming/redox/rust/src/libstd/thread/local.rs:178:17
|
178 | __KEY.get()
| ^^^^^ does not live long enough
179 | }
| - temporary value only lives until here
|
::: /home/nick/programming/redox/rust/src/libstd/sys_common/thread_info.rs
|
21 | thread_local! { static THREAD_INFO: RefCell<Option<ThreadInfo>> = RefCell::new(None) }
| -------------------------------------------------------------------------------------- in this macro invocation
|
= note: borrowed value must be valid for the static lifetime...
error[E0597]: borrowed value does not live long enough
--> /home/nick/programming/redox/rust/src/libstd/thread/local.rs:178:17
|
178 | __KEY.get()
| ^^^^^ does not live long enough
179 | }
| - temporary value only lives until here
|
::: /home/nick/programming/redox/rust/src/libstd/panicking.rs
|
35 | / thread_local! {
36 | | pub static LOCAL_STDERR: RefCell<Option<Box<Write + Send>>> = {
37 | | RefCell::new(None)
38 | | }
39 | | }
| |_- in this macro invocation
|
= note: borrowed value must be valid for the static lifetime...
error[E0597]: borrowed value does not live long enough
--> /home/nick/programming/redox/rust/src/libstd/thread/local.rs:178:17
|
178 | __KEY.get()
| ^^^^^ does not live long enough
179 | }
| - temporary value only lives until here
|
::: /home/nick/programming/redox/rust/src/libstd/panicking.rs
|
407 | thread_local! { static PANIC_COUNT: Cell<usize> = Cell::new(0) }
| ---------------------------------------------------------------- in this macro invocation
|
= note: borrowed value must be valid for the static lifetime...
error[E0597]: borrowed value does not live long enough
--> /home/nick/programming/redox/rust/src/libstd/thread/local.rs:178:17
|
178 | __KEY.get()
| ^^^^^ does not live long enough
179 | }
| - temporary value only lives until here
|
::: /home/nick/programming/redox/rust/src/libstd/rand/mod.rs
|
166 | / thread_local!(static THREAD_RNG_KEY: Rc<RefCell<ThreadRngInner>> = {
167 | | let r = match StdRng::new() {
168 | | Ok(r) => r,
169 | | Err(e) => panic!("could not initialize thread_rng: {}", e)
... |
174 | | Rc::new(RefCell::new(rng))
175 | | });
| |_______- in this macro invocation
|
= note: borrowed value must be valid for the static lifetime...
error: aborting due to 6 previous errors
error: Could not compile `std`.
To learn more, run the command again with --verbose.
error: `"cargo" "build" "--release" "--manifest-path" "/tmp/xargo.85ywWqqH4H1K/Cargo.toml" "--target" "x86_64-unknown-redox" "-p" "std"` failed with exit code: Some(101)
note: run with `RUST_BACKTRACE=1` for a backtrace
./repo.sh failed.mk/initfs.mk:2: recipe for target 'build/initfs.tag' failed
make: *** [build/initfs.tag] Error 1
Build information:
- rustc 1.21.0-nightly (f774bced5 2017-08-12)
- git head
3c5116424bdc2330d247fa31c9497446e3898ef5
- uname
Linux nick-1337-linux 4.4.0-66-generic #87-Ubuntu SMP Fri Mar 3 15:29:05 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux