No description provided.
ci: Native ARM64 jobs #1163
pull real-or-random wants to merge 2 commits into bitcoin-core:master from real-or-random:202211-ci-arm64-native changing 2 files +36 −28-
real-or-random commented at 11:19 AM on November 29, 2022: contributor
- real-or-random force-pushed on Nov 29, 2022
-
real-or-random commented at 11:31 AM on November 29, 2022: contributor
CI even fails to start:
Error while loading tasks: UNIMPLEMENTED: Dockerfile as CI environment is not yet supported for Arm containers!!(https://cirrus-ci.com/build/4859893270708224).
So this is going to be much more difficult, closing for now...
- real-or-random closed this on Nov 29, 2022
- real-or-random reopened this on Jun 28, 2023
- real-or-random marked this as ready for review on Jun 28, 2023
-
real-or-random commented at 3:45 PM on June 28, 2023: contributor
Let's see what CI is doing here after support for Dockerfile CI on ARM has been added. #1153 (comment)
- real-or-random marked this as a draft on Jun 28, 2023
-
ci: Refactor Linux yaml snippet to allow for different containers e5686a2390
- real-or-random force-pushed on Jun 29, 2023
-
WIP ci: Enable native ARM64 jobs fca59626e2
- real-or-random force-pushed on Jun 29, 2023
- real-or-random cross-referenced this on Jun 29, 2023 from issue ci: Test on development snapshots of GCC and Clang by real-or-random
-
real-or-random commented at 10:21 AM on June 30, 2023: contributor
Okay, so ARM64 builds work!
But ARM32 builds do not run. I tried to play around with this a bit using the Cirrus CI terminal, and I can't make it work. Giving up for now, but here are some notes:
- Error message was
Cannot execute binary file: Exec format error - This indicates that the CPU simply does not support AArch32.
- Indeed, not all ARM64 CPUs are backwards-compatible, but the one the task was running on is a Neoverse N1 and that one has AArch32 support. (https://developer.arm.com/documentation/100616/0301/functional-description/introduction/features)
- We need
CONFIG_COMPATin the kernel, but this was set. - I've seen suggestions to use
setarch linux32 -B [cmd]to run binaries, but this not possible from within unprivileged Docker...
I'll rework this to use only ARM64 then.
- Error message was
- real-or-random cross-referenced this on Aug 15, 2023 from issue ci: Future of CI after Cirrus pricing change by real-or-random
-
real-or-random commented at 4:25 PM on August 28, 2023: contributor
I'm currently looking into this.
-
MarcoFalke commented at 10:05 AM on October 1, 2023: none
I think this can be closed now?
- real-or-random closed this on Oct 2, 2023