neovide: Unable to build on aarch64
Describe the bug I have a compilation error on my aarch64 machine.
To Reproduce Try to build it, you will have the following error:
error: failed to run custom build command for `skia-bindings v0.39.1`
Caused by:
process didn't exit successfully: `/home/shatur/.cache/paru/clone/neovide-git/src/neovide-git/target/release/build/skia-bindings-caba516915705bd9/build-script-build` (exit status: 101)
--- stdout
cargo:rerun-if-env-changed=SKIA_DEBUG
HOST: aarch64-unknown-linux-gnu
cargo:rerun-if-env-changed=OPT_LEVEL
cargo:rerun-if-env-changed=CC
cargo:rerun-if-env-changed=CXX
cargo:rerun-if-env-changed=SKIA_SOURCE_DIR
cargo:rerun-if-env-changed=FORCE_SKIA_BUILD
cargo:rerun-if-env-changed=FORCE_SKIA_BINARIES_DOWNLOAD
TRYING TO DOWNLOAD AND INSTALL SKIA BINARIES: 0.39.1/750688025ba50471efe8-aarch64-unknown-linux-gnu-gl
cargo:rerun-if-env-changed=SKIA_BINARIES_URL
FROM: https://github.com/rust-skia/skia-binaries/releases/download/0.39.1/skia-binaries-750688025ba50471efe8-aarch64-unknown-linux-gnu-gl.tar.gz
DOWNLOAD AND INSTALL FAILED: https://github.com/rust-skia/skia-binaries/releases/download/0.39.1/skia-binaries-750688025ba50471efe8-aarch64-unknown-linux-gnu-gl.tar.gz: status code 404
STARTING A FULL BUILD
cargo:rerun-if-env-changed=SKIA_USE_SYSTEM_LIBRARIES
cargo:rerun-if-env-changed=SDKROOT
cargo:rerun-if-env-changed=SKIA_NINJA_COMMAND
cargo:rerun-if-env-changed=SKIA_GN_COMMAND
Probing 'python'
Probing 'python2'
Python 2 found: "python2"
Synchronizing Skia dependencies
DOWNLOADING: https://codeload.github.com/rust-skia/skia/tar.gz/m90-0.38.3
DOWNLOADING: https://codeload.github.com/rust-skia/depot_tools/tar.gz/a110bf6
Skipping "../src".
skia/third_party/externals/libgif... > fd59fa92a0c86788dcdd84d091e1ce81eda06a77
skia/third_party/externals/piex > bb217acdca1cc0c16b704669dd6f91a1b509c406
skia/third_party/externals/d3d12a... > 169895d529dfce00390a20e69c2f516066fe7a3b
skia/third_party/externals/zlib > c876c8f87101c5a75f6014b0f832499afeb65b73
skia/third_party/externals/libjpe... > 64fc43d52351ed52143208ce6a656c03db56462b
skia/third_party/externals/libwebp > fedac6cc69cda3e9e04b780d324cf03921fb3ff4
skia/third_party/externals/expat > e976867fb57a0cd87e3b0fe05d59e0ed63c6febb
skia/third_party/externals/spirv-... > bdbef7b1f3982fe99a62d076043036abe6dd6d80
skia/third_party/externals/harfbuzz > 3a74ee528255cc027d84b204a87b5c25e47bff79
skia/third_party/externals/freetype > dfa7cca5f3b4f494aae785891ab4a42e66db77ef
skia/third_party/externals/libpng > 386707c6d19b974ca2e3db7f5c61873813c6fe44
skia/third_party/externals/icu > dbd3825b31041d782c5b504c59dcfb5ac7dda08c
--- stderr
Traceback (most recent call last):
File "skia/bin/fetch-gn", line 26, in <module>
cpu = {'amd64': 'amd64', 'arm64': 'arm64', 'x86_64': 'amd64'}[platform.machine().lower()]
KeyError: 'aarch64'
Traceback (most recent call last):
File "skia/tools/git-sync-deps", line 266, in <module>
exit(main(sys.argv[1:]))
File "skia/tools/git-sync-deps", line 261, in main
os.path.join(os.path.dirname(deps_file_path), 'bin', 'fetch-gn')])
File "/usr/lib/python2.7/subprocess.py", line 190, in check_call
raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['/usr/bin/python2', 'skia/bin/fetch-gn']' returned non-zero exit status 1
thread 'main' panicked at '`skia/tools/git-sync-deps` failed', /home/shatur/.cache/paru/clone/neovide-git/src/neovide-git/CARGO/registry/src/github.com-1ecc6299db9ec823/skia-bindings-0.39.1/build_support/skia.rs:630:9
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
Desktop (please complete the following information):
- OS: Linux
- Neovide Version: 82b745c92bb6dab1402aef70b9c8e07a02979a41 (latest commit at the time of writing)
- Neovim Version: bdf3df4027a5389a46b4c9a75b50aff5c0ecb351 (latest commit at the time of writing)
About this issue
- Original URL
- State: closed
- Created 3 years ago
- Comments: 19 (8 by maintainers)
I tested it on a local branch. Builds fine on a spare aarch64 chromebook I have lying around.
Yes I’ll do this soon
It’s not a super-weird hardware 😄 This is exactly the same architecture as in the Raspberry Pi / all modern Android phones, and is even officially supported by all ARM-enabled distros. So I have a good chance 😃 By the way, I was surprised that Apple Sillicon defines itself differently (as
arm64).Reported to the rust-skia. Thanks for the response!
building neovide on a phone. Thats wild
It’s not a Mac. I am building on my PinePhone. As @shaunsingh pointed out, Mac can just have
amd64while my phone useaarch64.I believe
arm64is there for apple silicon machines. I think addingaarch64to that list is fine though