Closed Bug 1541112 Opened 5 years ago Closed 5 years ago

"mach bootstrap" for android build on macOS is failing

Categories

(Firefox Build System :: Bootstrap Configuration, defect)

defect
Not set
normal

Tracking

(Not tracked)

RESOLVED DUPLICATE of bug 1540788

People

(Reporter: jfkthame, Unassigned)

Details

Trying to update build environment to do a local Android build. Result:

$ ./mach bootstrap

Note on Artifact Mode:

Artifact builds download prebuilt C++ components rather than building
them locally. Artifact builds are faster!

Artifact builds are recommended for people working on Firefox or
Firefox for Android frontends, or the GeckoView Java API. They are unsuitable
for those working on C++ code. For more information see:
https://developer.mozilla.org/en-US/docs/Artifact_builds.

Please choose the version of Firefox you want to build:
  1. Firefox for Desktop Artifact Mode
  2. Firefox for Desktop
  3. GeckoView/Firefox for Android Artifact Mode
  4. GeckoView/Firefox for Android
Your choice: 4

Looks like you have Homebrew installed. We will install all required packages via Homebrew.

Updating Homebrew...
Your version of Java (/Library/Java/Home/bin/java) is at least 1.8 (1.8).

Looks like you have the Android NDK installed at:
/Users/jkew/.mozbuild/android-ndk-r17b


Looks like you have the Android SDK installed at:
/Users/jkew/.mozbuild/android-sdk-macosx
We will install all required Android packages.


We are now installing the following Android packages:
platform-tools
build-tools;27.0.3
platforms;android-28
emulator

You may be prompted to agree to the Android license. You may see some of
output as packages are downloaded and installed.

done
Your version of Mercurial (4.7.1) is sufficiently modern.
Your version of Python (2.7.15) is new enough.
Your version of Rust (1.32.0) is new enough.
Rust supports aarch64-linux-android, armv7-linux-androideabi, i686-linux-android, x86_64-apple-darwin, x86_64-linux-android targets.
error: toolchain 'stable-x86_64-apple-darwin' does not contain component 'rust-std' for target 'thumbv7neon-linux-androideabi'
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:

CalledProcessError: Command '[u'/Users/jkew/.cargo/bin/rustup', u'target', u'add', u'thumbv7neon-linux-androideabi']' returned non-zero exit status 1

  File "/Users/jkew/mozdev/mozilla-unified/python/mozboot/mozboot/mach_commands.py", line 43, in bootstrap
    bootstrapper.bootstrap()
  File "/Users/jkew/mozdev/mozilla-unified/python/mozboot/mozboot/bootstrap.py", line 434, in bootstrap
    self.instance.ensure_rust_modern()
  File "/Users/jkew/mozdev/mozilla-unified/python/mozboot/mozboot/base.py", line 676, in ensure_rust_modern
    self.ensure_rust_targets(rustup)
  File "/Users/jkew/mozdev/mozilla-unified/python/mozboot/mozboot/base.py", line 721, in ensure_rust_targets
    subprocess.check_call([rustup, 'target', 'add', target])
  File "/usr/local/Cellar/python@2/2.7.15_1/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 190, in check_call
    raise CalledProcessError(retcode, cmd)

FTR, in #developers Nathan suggested

<froydnj> jfkthame: you could try explicitly running rustup update && rustup target add thumbv7neon-linux-androideabi to see if that fixes anything

After running this, ./mach bootstrap completes happily.

Ah, this was bug 1540788. Doh.

Status: NEW → RESOLVED
Closed: 5 years ago
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.