-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ARM64 Linux builds #50
Comments
In the meantime, I have built the solvers locally on AArch64 Linux (or rather, on an
|
LGTM; might as well go ahead and push the patches... |
This adds three patches from #50, which will make it easier to build CVC4 on AArch64 (and especially AArch64 Linux) in the future: * `cvc4-antlr-update-config-guess.patch`: This updates the very old `config.guess` script that ANTLR uses (dating back to 2009) to a more recent one that is aware of AArch64 Linux and Darwin. Doing so fixes a spurious warning about building for 32-bit on AArch64 Darwin (thereby fixing #53) and unbreaks the AArch64 Linux build when combined with the next patch... * `cvc4-antlr-check-aarch64.patch`: By default, ANTLR's `configure` script will pass x86-specific flags such as `-m64`, which aren't supported by `gcc` on other architectures (e.g., AArch64). We can prevent this by passing `--disable-abiflags` to `configure` on these architectures. * `cvc4-antlr-pointer-to-integer-cast.patch`: Fix an implicit pointer-to-integer cast that causes x86-64 `gcc` to warn, but causes AArch64 `gcc` to fail with a full-blown error.
This adds the patches from #50, which will make it easier to build CVC4 on AArch64 (and especially AArch64 Linux) in the future: * `cvc4-antlr-check-aarch64.patch` This updates the very old `config.guess` and `config.sub` scripts that ANTLR uses (dating back to 2009) to more recent ones that are aware of AArch64 Linux and Darwin. Doing so fixes a spurious warning about building for 32-bit on AArch64 Darwin (thereby fixing #53) and unbreaks the AArch64 Linux build. Also, ANTLR's `configure` script will pass x86-specific flags such as `-m64` by default, which aren't supported by `gcc` on other architectures (e.g., AArch64). We can prevent this by passing `--disable-abiflags` to `configure` on these architectures. * `cvc4-antlr-pointer-to-integer-cast.patch`: Fix an implicit pointer-to-integer cast that causes x86-64 `gcc` to warn, but causes AArch64 `gcc` to fail with a full-blown error.
Currently, we offer X64 Linux builds of the solvers, but not ARM64 builds. This is primarily limited by the fact that GitHub Actions only offers X64 Ubuntu small runners at the time of writing this. There is a possibility that this may expand to ARM64 in the future, as GitHub now offers ARM64 Ubuntu large runners (which are more expensive than the default, small runners).
The text was updated successfully, but these errors were encountered: