[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Rust 1.19 fails to build on i686 on ‘staging’
From: |
Danny Milosavljevic |
Subject: |
Re: Rust 1.19 fails to build on i686 on ‘staging’ |
Date: |
Fri, 15 Feb 2019 11:51:32 +0100 |
Hi Chris,
On Fri, 15 Feb 2019 01:11:02 -0800
Chris Marusich <address@hidden> wrote:
> Here's more info about what I did. On my x86_64-linux Guix System
> machine, where the build failed, I ran the following commands:
>
> --8<---------------cut here---------------start------------->8---
> cd /tmp/guix-build-rust-1.19.0.drv-0
> . environment-variables
> cd rustc-1.19.0-src/
> /gnu/store/jxq5p3mx2gavj7hws1drz3pndn87lqrl-mrustc-0.8.0/bin/mrustc
> src/tools/cargo/src/bin/cargo.rs --crate-name cargo --crate-type bin
> --crate-tag 0_20_0 -g --cfg debug_assertions -O -o output/cargo-build/cargo
> -L output/cargo-build --extern cargo=output/cargo-build/libcargo-0_20_0.hir
> --extern crates_io=output/cargo-build/libcrates_io-0_9_0.hir --extern
> crossbeam=output/cargo-build/libcrossbeam-0_2_10.hir --extern
> curl=output/cargo-build/libcurl-0_4_6.hir --extern
> docopt=output/cargo-build/libdocopt-0_7_0.hir --extern
> env_logger=output/cargo-build/libenv_logger-0_4_2.hir --extern
> error_chain=output/cargo-build/liberror_chain-0_10_0.hir --extern
> filetime=output/cargo-build/libfiletime-0_1_10.hir --extern
> flate2=output/cargo-build/libflate2-0_2_19.hir --extern
> fs2=output/cargo-build/libfs2-0_4_1.hir --extern
> git2=output/cargo-build/libgit2-0_6_6.hir --extern
> git2_curl=output/cargo-build/libgit2_curl-0_7_0.hir --extern
> glob=output/cargo-build/libglob-0_2_11.hir --extern
> jobserver=output/cargo-build/libjobserver-0_1_6.hir --extern
> libc=output/cargo-build/liblibc-0_2_22.hir --extern
> libgit2_sys=output/cargo-build/liblibgit2_sys-0_6_12.hir --extern
> log=output/cargo-build/liblog-0_3_7.hir --extern
> num_cpus=output/cargo-build/libnum_cpus-1_4_0.hir --extern
> rustc_serialize=output/cargo-build/librustc_serialize-0_3_24.hir --extern
> scoped_tls=output/cargo-build/libscoped_tls-0_1_0.hir --extern
> semver=output/cargo-build/libsemver-0_7_0.hir --extern
> serde=output/cargo-build/libserde-1_0_6.hir --extern
> serde_derive=output/cargo-build/libserde_derive-1_0_6.hir --extern
> serde_ignored=output/cargo-build/libserde_ignored-0_0_3.hir --extern
> serde_json=output/cargo-build/libserde_json-1_0_2.hir --extern
> shell_escape=output/cargo-build/libshell_escape-0_1_3.hir --extern
> tar=output/cargo-build/libtar-0_4_13.hir --extern
> tempdir=output/cargo-build/libtempdir-0_3_5.hir --extern
> term=output/cargo-build/libterm-0_4_5.hir --extern
> toml=output/cargo-build/libtoml-0_4_1.hir --extern
> url=output/cargo-build/liburl-1_4_0.hir --extern
> openssl=output/cargo-build/libopenssl-0_9_12.hir -L output -L
> /gnu/store/jxq5p3mx2gavj7hws1drz3pndn87lqrl-mrustc-0.8.0/lib/mrust
> --8<---------------cut here---------------end--------------->8---
> Do I need to do something special to attempt to run this mrustc program
> in "i686-linux" mode? For example, I see that the guix-daemon sets the
> Linux kernel's personality to 32 bits by invoking
> personality(PER_LINUX32) in nix/libstore/build.cc. Maybe mrustc won't
> fail unless we do that first?
Oh, that might be related. I didn't think of that.
Can you try the following (if you didn't already)?
$ guix environment --pure -s i686-linux address@hidden
[env]$ cd /tmp/guix-build-rust-1.19.0.drv-0
[env]$ . environment-variables
[env]$ cd rustc-1.19.0-src/
[env]$ /gnu/store/jxq5p3mx2gavj7hws1drz3pndn87lqrl-mrustc-0.8.0/bin/mrustc
src/tools/cargo/src/bin/cargo.rs --crate-name cargo --crate-type bin
--crate-tag 0_20_0 -g --cfg debug_assertions -O -o output/cargo-build/cargo -L
output/cargo-build --extern cargo=output/cargo-build/libcargo-0_20_0.hir
--extern crates_io=output/cargo-build/libcrates_io-0_9_0.hir --extern
crossbeam=output/cargo-build/libcrossbeam-0_2_10.hir --extern
curl=output/cargo-build/libcurl-0_4_6.hir --extern
docopt=output/cargo-build/libdocopt-0_7_0.hir --extern
env_logger=output/cargo-build/libenv_logger-0_4_2.hir --extern
error_chain=output/cargo-build/liberror_chain-0_10_0.hir --extern
filetime=output/cargo-build/libfiletime-0_1_10.hir --extern
flate2=output/cargo-build/libflate2-0_2_19.hir --extern
fs2=output/cargo-build/libfs2-0_4_1.hir --extern
git2=output/cargo-build/libgit2-0_6_6.hir --extern
git2_curl=output/cargo-build/libgit2_curl-0_7_0.hir --extern
glob=output/cargo-build/libglob-0_2_11.hir --extern
jobserver=output/cargo-build/libjobserver-0_1_6.hir --extern
libc=output/cargo-build/liblibc-0_2_22.hir --extern
libgit2_sys=output/cargo-build/liblibgit2_sys-0_6_12.hir --extern
log=output/cargo-build/liblog-0_3_7.hir --extern
num_cpus=output/cargo-build/libnum_cpus-1_4_0.hir --extern
rustc_serialize=output/cargo-build/librustc_serialize-0_3_24.hir --extern
scoped_tls=output/cargo-build/libscoped_tls-0_1_0.hir --extern
semver=output/cargo-build/libsemver-0_7_0.hir --extern
serde=output/cargo-build/libserde-1_0_6.hir --extern
serde_derive=output/cargo-build/libserde_derive-1_0_6.hir --extern
serde_ignored=output/cargo-build/libserde_ignored-0_0_3.hir --extern
serde_json=output/cargo-build/libserde_json-1_0_2.hir --extern
shell_escape=output/cargo-build/libshell_escape-0_1_3.hir --extern
tar=output/cargo-build/libtar-0_4_13.hir --extern
tempdir=output/cargo-build/libtempdir-0_3_5.hir --extern
term=output/cargo-build/libterm-0_4_5.hir --extern
toml=output/cargo-build/libtoml-0_4_1.hir --extern
url=output/cargo-build/liburl-1_4_0.hir --extern
openssl=output/cargo-build/libopenssl-0_9_12.hir -L output -L
/gnu/store/jxq5p3mx2gavj7hws1drz3pndn87lqrl-mrustc-0.8.0/lib/mrust
(i.e. the things you did before, just inside a i686-linux guix environment.
That only provides minimal--almost no--isolation from the host, so it should
allow us to test whether the personality is the only possible culprit)
pgp6QhiMPyYbX.pgp
Description: OpenPGP digital signature
- Re: Rust 1.19 fails to build on i686 on ‘staging’, Danny Milosavljevic, 2019/02/05
- Re: Rust 1.19 fails to build on i686 on ‘staging’, Danny Milosavljevic, 2019/02/05
- Re: Rust 1.19 fails to build on i686 on ‘staging’, Danny Milosavljevic, 2019/02/11
- Re: Rust 1.19 fails to build on i686 on ‘staging’, Chris Marusich, 2019/02/12
- Re: Rust 1.19 fails to build on i686 on ‘staging’, Danny Milosavljevic, 2019/02/12
- Re: Rust 1.19 fails to build on i686 on ‘staging’, Chris Marusich, 2019/02/12
- Re: Rust 1.19 fails to build on i686 on ‘staging’, Chris Marusich, 2019/02/13
- Re: Rust 1.19 fails to build on i686 on ‘staging’, Chris Marusich, 2019/02/13
- Re: Rust 1.19 fails to build on i686 on ‘staging’, Danny Milosavljevic, 2019/02/14
- Re: Rust 1.19 fails to build on i686 on ‘staging’, Chris Marusich, 2019/02/15
- Re: Rust 1.19 fails to build on i686 on ‘staging’,
Danny Milosavljevic <=
- Re: Rust 1.19 fails to build on i686 on ‘staging’, Chris Marusich, 2019/02/16
- Re: Rust 1.19 fails to build on i686 on ‘staging’, Danny Milosavljevic, 2019/02/18