Created attachment 604248 [details] rust build log Currently have: dev-lang/rust-1.39.0::gentoo was built with the following: USE="clippy doc rls rustfmt system-llvm wasm -debug -libressl" ABI_X86="32 (64) (-x32)" CPU_FLAGS_X86="sse2" LLVM_TARGETS="BPF NVPTX WebAssembly (X86) -AArch64 -AMDGPU -ARM -Hexagon -Lanai -MSP430 -Mips -PowerPC -RISCV -Sparc -SystemZ -XCore" dev-lang/rust-bin-1.40.0::gentoo was built with the following: USE="-clippy -doc -libressl -rustfmt" ABI_X86="32 (64) (-x32)" CPU_FLAGS_X86="sse2" The latter due to USE="system-bootstrap" Portage tries to install rust: [ebuild U ] dev-lang/rust-1.40.0-r1:stable/1.40::gentoo [1.39.0:stable/1.39::gentoo] USE="clippy rls rustfmt system-bootstrap%* wasm -debug -doc* -libressl -nightly% -parallel-compiler% -system-llvm*" ABI_X86="32 (64) (-x32)" CPU_FLAGS_X86="sse2" LLVM_TARGETS="BPF NVPTX WebAssembly (X86) -AArch64 -AMDGPU -ARM -Hexagon -Lanai -MSP430 -Mips -PowerPC -RISCV -Sparc -SystemZ -XCore" 0 KiB Then something happens and eventually: Compiling libc v0.2.64 Compiling semver-parser v0.7.0 Running `/var/tmp/portage/dev-lang/rust-1.40.0-r1/work/rustc-1.40.0-src/build/bootstrap/debug/rustc --crate-name cfg_if /var/tmp/portage/dev-lang/rust-1.40.0-r1/work/rustc-1.40.0-src/vendor/cfg-if/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C opt-level=2 -C debuginfo=0 -C metadata=1bf8d2ec088b41c7 -C extra-filename=-1bf8d2ec088b41c7 --out-dir /var/tmp/portage/dev-lang/rust-1.40.0-r1/work/rustc-1.40.0-src/build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/deps --target x86_64-unknown-linux-gnu -C linker=x86_64-pc-linux-gnu-gcc -L dependency=/var/tmp/portage/dev-lang/rust-1.40.0-r1/work/rustc-1.40.0-src/build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/deps -L dependency=/var/tmp/portage/dev-lang/rust-1.40.0-r1/work/rustc-1.40.0-src/build/x86_64-unknown-linux-gnu/stage0-rustc/release/deps --cap-lints allow --cfg=bootstrap -Zexternal-macro-backtrace -Wrust_2018_idioms -Wunused_lifetimes -Dwarnings -Zunstable-options '-Wrustc::internal' -Cprefer-dynamic -Zbinary-dep-depinfo` Running `/var/tmp/portage/dev-lang/rust-1.40.0-r1/work/rustc-1.40.0-src/build/bootstrap/debug/rustc --crate-name build_script_build /var/tmp/portage/dev-lang/rust-1.40.0-r1/work/rustc-1.40.0-src/vendor/libc/build.rs --error-format json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -C opt-level=2 -C debuginfo=0 --cfg 'feature="default"' --cfg 'feature="std"' -C metadata=400e936524cfb9cb -C extra-filename=-400e936524cfb9cb --out-dir /var/tmp/portage/dev-lang/rust-1.40.0-r1/work/rustc-1.40.0-src/build/x86_64-unknown-linux-gnu/stage0-rustc/release/build/libc-400e936524cfb9cb -C linker=x86_64-pc-linux-gnu-gcc -L dependency=/var/tmp/portage/dev-lang/rust-1.40.0-r1/work/rustc-1.40.0-src/build/x86_64-unknown-linux-gnu/stage0-rustc/release/deps --cap-lints allow -Zbinary-dep-depinfo` Running `/var/tmp/portage/dev-lang/rust-1.40.0-r1/work/rustc-1.40.0-src/build/bootstrap/debug/rustc --crate-name semver_parser /var/tmp/portage/dev-lang/rust-1.40.0-r1/work/rustc-1.40.0-src/vendor/semver-parser/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C opt-level=2 -C debuginfo=0 -C metadata=27b008c5ef5bfc5d -C extra-filename=-27b008c5ef5bfc5d --out-dir /var/tmp/portage/dev-lang/rust-1.40.0-r1/work/rustc-1.40.0-src/build/x86_64-unknown-linux-gnu/stage0-rustc/release/deps -C linker=x86_64-pc-linux-gnu-gcc -L dependency=/var/tmp/portage/dev-lang/rust-1.40.0-r1/work/rustc-1.40.0-src/build/x86_64-unknown-linux-gnu/stage0-rustc/release/deps --cap-lints allow -Zbinary-dep-depinfo` rustc command: "LD_LIBRARY_PATH"="/usr/lib:/var/tmp/portage/dev-lang/rust-1.40.0-r1/work/rustc-1.40.0-src/build/x86_64-unknown-linux-gnu/stage0-rustc/release/deps:/usr/lib" "/usr/bin/rustc" "--crate-name" "build_script_build" "/var/tmp/portage/dev-lang/rust-1.40.0-r1/work/rustc-1.40.0-src/vendor/libc/build.rs" "--error-format" "json" "--json=diagnostic-rendered-ansi" "--crate-type" "bin" "--emit=dep-info,link" "-C" "opt-level=2" "-C" "debuginfo=0" "--cfg" "feature=\"default\"" "--cfg" "feature=\"std\"" "-C" "metadata=400e936524cfb9cb" "-C" "extra-filename=-400e936524cfb9cb" "--out-dir" "/var/tmp/portage/dev-lang/rust-1.40.0-r1/work/rustc-1.40.0-src/build/x86_64-unknown-linux-gnu/stage0-rustc/release/build/libc-400e936524cfb9cb" "-C" "linker=x86_64-pc-linux-gnu-gcc" "-L" "dependency=/var/tmp/portage/dev-lang/rust-1.40.0-r1/work/rustc-1.40.0-src/build/x86_64-unknown-linux-gnu/stage0-rustc/release/deps" "--cap-lints" "allow" "-Zbinary-dep-depinfo" "-Clinker=x86_64-pc-linux-gnu-gcc" rustc command: "LD_LIBRARY_PATH"="/usr/lib:/var/tmp/portage/dev-lang/rust-1.40.0-r1/work/rustc-1.40.0-src/build/x86_64-unknown-linux-gnu/stage0-rustc/release/deps:/usr/lib" "/usr/bin/rustc" "--crate-name" "cfg_if" "/var/tmp/portage/dev-lang/rust-1.40.0-r1/work/rustc-1.40.0-src/vendor/cfg-if/src/lib.rs" "--error-format=json" "--json=diagnostic-rendered-ansi,artifacts" "--crate-type" "lib" "--emit=dep-info,metadata,link" "-C" "opt-level=2" "-C" "debuginfo=0" "-C" "metadata=1bf8d2ec088b41c7" "-C" "extra-filename=-1bf8d2ec088b41c7" "--out-dir" "/var/tmp/portage/dev-lang/rust-1.40.0-r1/work/rustc-1.40.0-src/build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/deps" "--target" "x86_64-unknown-linux-gnu" "-C" "linker=x86_64-pc-linux-gnu-gcc" "-L" "dependency=/var/tmp/portage/dev-lang/rust-1.40.0-r1/work/rustc-1.40.0-src/build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/deps" "-L" "dependency=/var/tmp/portage/dev-lang/rust-1.40.0-r1/work/rustc-1.40.0-src/build/x86_64-unknown-linux-gnu/stage0-rustc/release/deps" "--cap-lints" "allow" "--cfg=bootstrap" "-Zexternal-macro-backtrace" "-Wrust_2018_idioms" "-Wunused_lifetimes" "-Dwarnings" "-Zunstable-options" "-Wrustc::internal" "-Cprefer-dynamic" "-Zbinary-dep-depinfo" "--sysroot" "/var/tmp/portage/dev-lang/rust-1.40.0-r1/work/rustc-1.40.0-src/build/x86_64-unknown-linux-gnu/stage0-sysroot" "-C" "debug-assertions=n" "-Z" "force-unstable-if-unmarked" sysroot: "/var/tmp/portage/dev-lang/rust-1.40.0-r1/work/rustc-1.40.0-src/build/x86_64-unknown-linux-gnu/stage0-sysroot" libdir: "/usr/lib" sysroot: "/var/tmp/portage/dev-lang/rust-1.40.0-r1/work/rustc-1.40.0-src/build/x86_64-unknown-linux-gnu/stage0-sysroot" libdir: "/usr/lib" rustc command: "LD_LIBRARY_PATH"="/usr/lib:/var/tmp/portage/dev-lang/rust-1.40.0-r1/work/rustc-1.40.0-src/build/x86_64-unknown-linux-gnu/stage0-rustc/release/deps:/usr/lib" "/usr/bin/rustc" "--crate-name" "semver_parser" "/var/tmp/portage/dev-lang/rust-1.40.0-r1/work/rustc-1.40.0-src/vendor/semver-parser/src/lib.rs" "--error-format=json" "--json=diagnostic-rendered-ansi,artifacts" "--crate-type" "lib" "--emit=dep-info,metadata,link" "-C" "opt-level=2" "-C" "debuginfo=0" "-C" "metadata=27b008c5ef5bfc5d" "-C" "extra-filename=-27b008c5ef5bfc5d" "--out-dir" "/var/tmp/portage/dev-lang/rust-1.40.0-r1/work/rustc-1.40.0-src/build/x86_64-unknown-linux-gnu/stage0-rustc/release/deps" "-C" "linker=x86_64-pc-linux-gnu-gcc" "-L" "dependency=/var/tmp/portage/dev-lang/rust-1.40.0-r1/work/rustc-1.40.0-src/build/x86_64-unknown-linux-gnu/stage0-rustc/release/deps" "--cap-lints" "allow" "-Zbinary-dep-depinfo" "-Clinker=x86_64-pc-linux-gnu-gcc" sysroot: "/var/tmp/portage/dev-lang/rust-1.40.0-r1/work/rustc-1.40.0-src/build/x86_64-unknown-linux-gnu/stage0-sysroot" libdir: "/usr/lib" error[E0463]: can't find crate for `core` error: aborting due to previous error For more information about this error, try `rustc --explain E0463`. error: could not compile `cfg-if`. Caused by: process didn't exit successfully: `/var/tmp/portage/dev-lang/rust-1.40.0-r1/work/rustc-1.40.0-src/build/bootstrap/debug/rustc --crate-name cfg_if /var/tmp/portage/dev-lang/rust-1.40.0-r1/work/rustc-1.40.0-src/vendor/cfg-if/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C opt-level=2 -C debuginfo=0 -C metadata=1bf8d2ec088b41c7 -C extra-filename=-1bf8d2ec088b41c7 --out-dir /var/tmp/portage/dev-lang/rust-1.40.0-r1/work/rustc-1.40.0-src/build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/deps --target x86_64-unknown-linux-gnu -C linker=x86_64-pc-linux-gnu-gcc -L dependency=/var/tmp/portage/dev-lang/rust-1.40.0-r1/work/rustc-1.40.0-src/build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/deps -L dependency=/var/tmp/portage/dev-lang/rust-1.40.0-r1/work/rustc-1.40.0-src/build/x86_64-unknown-linux-gnu/stage0-rustc/release/deps --cap-lints allow --cfg=bootstrap -Zexternal-macro-backtrace -Wrust_2018_idioms -Wunused_lifetimes -Dwarnings -Zunstable-options '-Wrustc::internal' -Cprefer-dynamic -Zbinary-dep-depinfo` (exit code: 1) warning: build failed, waiting for other jobs to finish... error: build failed command did not execute successfully: "/usr/bin/cargo" "build" "-Zconfig-profile" "--target" "x86_64-unknown-linux-gnu" "-Zbinary-dep-depinfo" "-j" "3" "-v" "--release" "--locked" "--frozen" "--features" "" "--manifest-path" "/var/tmp/portage/dev-lang/rust-1.40.0-r1/work/rustc-1.40.0-src/src/rustc/Cargo.toml" "--message-format" "json-render-diagnostics" expected success, got: exit code: 101 Traceback (most recent call last): File "./x.py", line 11, in <module> bootstrap.main() File "/var/tmp/portage/dev-lang/rust-1.40.0-r1/work/rustc-1.40.0-src/src/bootstrap/bootstrap.py", line 895, in main bootstrap(help_triggered) File "/var/tmp/portage/dev-lang/rust-1.40.0-r1/work/rustc-1.40.0-src/src/bootstrap/bootstrap.py", line 881, in bootstrap run(args, env=env, verbose=build.verbose) File "/var/tmp/portage/dev-lang/rust-1.40.0-r1/work/rustc-1.40.0-src/src/bootstrap/bootstrap.py", line 141, in run raise RuntimeError(err) RuntimeError: failed to run: /var/tmp/portage/dev-lang/rust-1.40.0-r1/work/rustc-1.40.0-src/build/bootstrap/debug/bootstrap build -vv --config=/var/tmp/portage/dev-lang/rust-1.40.0-r1/work/rustc-1.40.0-src/config.toml -j3 --exclude src/tools/miri Many much crying to be had.
like discussed on irc you probably had rust-1.39.0 active and system-bootstrap needs some logic to prevent using outdated rust. error[E0463]: can't find crate for `core` happens with every dev-lang/rust before 1.40.0-r1 if you try to use it for bootstrap. you should be able to bootstrap 1.40.0-r1 using rust-bin, just make sure it's eselected.
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ef89cb77bf9fc16eec9e140e29138adb8d74258a commit ef89cb77bf9fc16eec9e140e29138adb8d74258a Author: Georgy Yakovlev <gyakovlev@gentoo.org> AuthorDate: 2020-08-04 23:39:45 +0000 Commit: Georgy Yakovlev <gyakovlev@gentoo.org> CommitDate: 2020-08-04 23:43:11 +0000 dev-lang/rust: improve pre-build checks in 1.45.2 Bug: https://bugs.gentoo.org/709362 Bug: https://bugs.gentoo.org/706292 Package-Manager: Portage-3.0.1, Repoman-2.3.23 Signed-off-by: Georgy Yakovlev <gyakovlev@gentoo.org> dev-lang/rust/rust-1.45.2.ebuild | 34 +++++++++++++++++++++++++++++++--- 1 file changed, 31 insertions(+), 3 deletions(-)
this is fixed, new versions check lower and upper bound, ebuilds auto-eselect latest rust on emerge.