anza-xyz / agave

Web-Scale Blockchain for fast, secure, scalable, decentralized apps and marketplaces.
https://www.anza.xyz/
Apache License 2.0
464 stars 228 forks source link

Release for ARM linux architecture #1734

Open jp opened 5 months ago

jp commented 5 months ago

Problem

When I try to install the solana CLI on an ARM linux server (ex: graviton instances on AWS), it tries to download the following package:

https://release.solana.com/v1.18.16/solana-install-init-aarch64-unknown-linux-gnu

Unfortunately, solana-cli is not packaged for ARM linux servers. Proposed Solution

Proposed Solution

Build solana-cli for ARM server and release it along the other packages.

real-felix commented 3 months ago

What did you do eventually? Is there a way to have a working env? I try using Anchor, but simply installing the CLI with cargo install doesn't do the trick.

real-felix commented 3 months ago

@joncinque Hey can I help with publishing the binaries for my platform? I think that the related code is in ci/publish-tarball.sh and ci/buildkite-secondary.yml. If you give me a bit of guidance, I can propose a PR.

It assumes that Linux is considered to be always x86 here:

case "$CI_OS_NAME" in
osx)
  _cputype="$(uname -m)"
  if [[ $_cputype = arm64 ]]; then
    _cputype=aarch64
  fi
  TARGET=${_cputype}-apple-darwin
  ;;
linux)
  TARGET=x86_64-unknown-linux-gnu
  ;;

if I add the same check as for macos, I can take the arch into account. Then I can create a new task for linux ARM. Does it sound good?

dzmitry-lahoda commented 1 week ago

https://github.com/anza-xyz/platform-tools/releases/tag/v1.43 got aarch64-linux, so I guess we can hope same for solana-cli.

So not yet tested tools as asked https://github.com/anza-xyz/platform-tools/issues/66#issuecomment-2492297965 . Tbh not sure what to test without solana CLI :)