Open Bug 1452190 Opened 7 years ago Updated 2 years ago

Crash running rustup-init on 32-bit linux

Categories

(Firefox Build System :: Bootstrap Configuration, defect)

59 Branch
x86
Linux
defect

Tracking

(Not tracked)

People

(Reporter: akkzilla, Unassigned)

Details

Trying to make an artifact build on my 32-bit netbook, I downloaded the bz2 tarball specified in http://ftp.mozilla.org/pub/firefox/releases/59.0.2/SOURCE (I first tried to use hg, but my attempts to "hg up -c release" always failed with " abort: HTTP request error (incomplete response; expected 5328 bytes got 2672)"). Then I ran ./mach bootstrap, specified a desktop artifact build, let it install the first few prerequisites, but then it died trying to check rust: Could not find a Rust compiler. Will try to install Rust. Downloading rustup-init... Ok Running rustup-init... Error running mach: ['bootstrap'] The error occurred in code that was called by the mach command. This is either a bug in the called code itself or in the way that mach is calling it. You should consider filing a bug for this issue. If filing a bug, please include the full output of mach, including this error message. The details of the failure are as follows: OSError: [Errno 8] Exec format error File "/home/akkana/outsrc/mozilla-release/python/mozboot/mozboot/mach_commands.py", line 32, in bootstrap bootstrapper.bootstrap() File "/home/akkana/outsrc/mozilla-release/python/mozboot/mozboot/bootstrap.py", line 301, in bootstrap self.instance.ensure_rust_modern() File "/home/akkana/outsrc/mozilla-release/python/mozboot/mozboot/base.py", line 644, in ensure_rust_modern self.install_rust() File "/home/akkana/outsrc/mozilla-release/python/mozboot/mozboot/base.py", line 687, in install_rust '--default-host', platform, ]) File "/usr/lib/python2.7/subprocess.py", line 181, in check_call retcode = call(*popenargs, **kwargs) File "/usr/lib/python2.7/subprocess.py", line 168, in call return Popen(*popenargs, **kwargs).wait() File "/usr/lib/python2.7/subprocess.py", line 390, in __init__ errread, errwrite) File "/usr/lib/python2.7/subprocess.py", line 1024, in _execute_child raise child_exception zsh: exit 1 ./mach bootstrap First, I thought the point of artifact builds was that things like a Rust compiler weren't needed? But if it is needed, it may be downloading a 64-bit rustup even on 32-bit platforms. I can't tell for sure because it has a "finally" clause that removes the rustup-init while crashing, so I can't check the file type.
This happens with a regular (non-artifact) build as well. Looks like there's no way to run mach bootstrap on 32-bit x86. The problem is in mozboot/mozboot/rust.py line 21: elif sys.platform.startswith('linux'): return 'x86_64-unknown-linux-gnu' That's a bad assumption: Linux runs on lots of platforms, not just x86_64. I downloaded https://static.rust-lang.org/rustup.sh and it installed rust just fine, so it's not that rust isn't available, it's just that mozilla's rust.py doesn't check the platform properly.
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.