Jump to content
Read the Funtoo Newsletter: Summer 2023 ×
  • 0

can't compile dev-lang/rust-1.46.0


pedalo

Question

hi, i tried compiling rust on my desktop but it failed numerous time, i tried running emerge like i'd normally do, i also tried running it with only one job using MAKEOPTS="-j1", i have 12GiB of RAM and the same amount of swap so memory isn't the problem. i used these use flags : "clippy parallel-compiler rustfmt nightly" and here is the error (i also provided the output of emerge --info '=dev-lang/rust-1.46.0::lang-kit' as an attachment) anybody has any idea about what is causing this ?

PS : i asked this question on the discord server too, please don't kill me if i shouldn't do it here too

     Running `/var/tmp/portage/dev-lang/rust-1.46.0/work/rust-stage0/bin/rustc --crate-name build_script_build /var/tmp/portage/dev-lang/rust-1.46.0/work/rustc-1.46.0-src/vendor/crossbeam-utils/build.rs --error-format=json --json=diagnostic-rendered-ansi --crate-type bin --emit=dep-info,link -Cembed-bitcode=no -C debuginfo=2 --cfg 'feature="default"' --cfg 'feature="lazy_static"' --cfg 'feature="std"' -C metadata=b75193f5c76106f2 -C extra-filename=-b75193f5c76106f2 --out-dir /var/tmp/portage/dev-lang/rust-1.46.0/work/rustc-1.46.0-src/build/bootstrap/debug/build/crossbeam-utils-b75193f5c76106f2 -L dependency=/var/tmp/portage/dev-lang/rust-1.46.0/work/rustc-1.46.0-src/build/bootstrap/debug/deps --extern autocfg=/var/tmp/portage/dev-lang/rust-1.46.0/work/rustc-1.46.0-src/build/bootstrap/debug/deps/libautocfg-ac8e1a092cbfaee6.rlib --cap-lints allow -C target-cpu=haswell -Cdebuginfo=2 -C linker=x86_64-pc-linux-gnu-gcc -Wrust_2018_idioms -Wunused_lifetimes -Dwarnings`
The futex facility returned an unexpected error code.
error: could not compile `memchr`.

Caused by:
  process didn't exit successfully: `/var/tmp/portage/dev-lang/rust-1.46.0/work/rust-stage0/bin/rustc --crate-name memchr /var/tmp/portage/dev-lang/rust-1.46.0/work/rustc-1.46.0-src/vendor/memchr/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -Cembed-bitcode=no -C debuginfo=2 --cfg 'feature="default"' --cfg 'feature="std"' --cfg 'feature="use_std"' -C metadata=bb39e2a5397cb723 -C extra-filename=-bb39e2a5397cb723 --out-dir /var/tmp/portage/dev-lang/rust-1.46.0/work/rustc-1.46.0-src/build/bootstrap/debug/deps -L dependency=/var/tmp/portage/dev-lang/rust-1.46.0/work/rustc-1.46.0-src/build/bootstrap/debug/deps --cap-lints allow -C target-cpu=haswell -Cdebuginfo=2 -C linker=x86_64-pc-linux-gnu-gcc -Wrust_2018_idioms -Wunused_lifetimes -Dwarnings --cfg memchr_runtime_simd --cfg memchr_runtime_sse2 --cfg memchr_runtime_sse42 --cfg memchr_runtime_avx` (exit code: 134)
warning: build failed, waiting for other jobs to finish...
error: build failed
Traceback (most recent call last):
  File "./x.py", line 11, in <module>
    bootstrap.main()
  File "/var/tmp/portage/dev-lang/rust-1.46.0/work/rustc-1.46.0-src/src/bootstrap/bootstrap.py", line 981, in main
    bootstrap(help_triggered)
  File "/var/tmp/portage/dev-lang/rust-1.46.0/work/rustc-1.46.0-src/src/bootstrap/bootstrap.py", line 948, in bootstrap
    build.build_bootstrap()
  File "/var/tmp/portage/dev-lang/rust-1.46.0/work/rustc-1.46.0-src/src/bootstrap/bootstrap.py", line 733, in build_bootstrap
    run(args, env=env, verbose=self.verbose)
  File "/var/tmp/portage/dev-lang/rust-1.46.0/work/rustc-1.46.0-src/src/bootstrap/bootstrap.py", line 143, in run
    raise RuntimeError(err)
RuntimeError: failed to run: /var/tmp/portage/dev-lang/rust-1.46.0/work/rust-stage0/bin/cargo build --manifest-path /var/tmp/portage/dev-lang/rust-1.46.0/work/rustc-1.46.0-src/src/bootstrap/Cargo.toml --verbose --locked --frozen
 * ERROR: dev-lang/rust-1.46.0::lang-kit failed (compile phase):
 *   (no error message)
 *
 * Call stack:
 *     ebuild.sh, line  93:  Called src_compile
 *   environment, line 3652:  Called die
 * The specific snippet of code:
 *       env $(cat "${S}"/config.env) RUST_BACKTRACE=1 "${EPYTHON}" ./x.py build -vv --config="${S}"/config.toml -j$(makeopts_jobs) || die
 *
 * If you need support, post the output of `emerge --info '=dev-lang/rust-1.46.0::lang-kit'`,
 * the complete build log and the output of `emerge -pqv '=dev-lang/rust-1.46.0::lang-kit'`.
 * The complete build log is located at '/var/tmp/portage/dev-lang/rust-1.46.0/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/dev-lang/rust-1.46.0/temp/environment'.
 * Working directory: '/var/tmp/portage/dev-lang/rust-1.46.0/work/rustc-1.46.0-src'
 * S: '/var/tmp/portage/dev-lang/rust-1.46.0/work/rustc-1.46.0-src'

 * Messages for package dev-lang/rust-1.46.0:

 * ERROR: dev-lang/rust-1.46.0::lang-kit failed (compile phase):
 *   (no error message)
 *
 * Call stack:
 *     ebuild.sh, line  93:  Called src_compile
 *   environment, line 3652:  Called die
 * The specific snippet of code:
 *       env $(cat "${S}"/config.env) RUST_BACKTRACE=1 "${EPYTHON}" ./x.py build -vv --config="${S}"/config.toml -j$(makeopts_jobs) || die
 *
 * If you need support, post the output of `emerge --info '=dev-lang/rust-1.46.0::lang-kit'`,
 * the complete build log and the output of `emerge -pqv '=dev-lang/rust-1.46.0::lang-kit'`.
 * The complete build log is located at '/var/tmp/portage/dev-lang/rust-1.46.0/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/dev-lang/rust-1.46.0/temp/environment'.
 * Working directory: '/var/tmp/portage/dev-lang/rust-1.46.0/work/rustc-1.46.0-src'
 * S: '/var/tmp/portage/dev-lang/rust-1.46.0/work/rustc-1.46.0-src'

 

emerge-info

Link to comment
Share on other sites

2 answers to this question

Recommended Posts

  • 0

The Rust people have removed C routines as "unsafe".  C is not unsafe, lazy programmers are unsafe.

Anyhow, they have screwed the python cryptography module and everyone's CI pipelines are breaking.

The solution is to recompile the Rust toolchain.

I notice Funtoo did a mini update to 5.10.26_p1 and that should compile whatever broke. When I am compiling toolchain stuff, I emerge @system first and then @world, which is redundant but ensures the toolchain is complete.

ex: emerge -uDN --with-bdeps=y --emptytree @system

Note: this takes almost two days on my iCore 5.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...