Closed GwynethLlewelyn closed 4 years ago
Yes. It is possible. We just need to add a compiler target for aarch64 so that it can be used on those systems, but you should be able to compile it from source and use it on aarch64.
ARM/ARM64 builds will be available for the next release thanks to https://github.com/fishworks/gofish/pull/162. Closing!
Awesome! Just to give a heads up to the gofish
team, it does now compile neatly in my Synology NAS! It wasn't straightforward because Synology's version of Linux, known as DiskStation Manager (DSM), does (deliberately) not include any development tools, including make
(or any of its variants); actual compilation & installation is a bit trickier than under other platforms, but... it works.
Now I just need to start persuading fish food developers to start supporting the aarch64
architecture; but, as said, this will be the case sooner than later, as Macs based on Apple Silicon start rolling out of the factories...
Indeed, I got my hands on an M1 mac and was surprised to find that most gofish formulas don't already support it.
Several PRs inbound, for tools that definitely already do distribute binaries that just aren't listed yet in fish foods 👍
I know — I could look it up in the code... but I just read the documentation, and while there is no doubt that it will work with any popular Linux distro for the
x86_64
architecture, I wonder ifgofish
has any chance to run under Linux foraarch64
(ARM64).I'm asking this because I have a nice Synology NAS running Synology's own version of Linux/aarch64, which compiles Go applications flawlessly. But I lack the vast amount of software out there — there are a few package managers for Linux/aarch64, most of which are in a state of semi-abandonment or are specifically targeted to the Raspberry Pi. There are so many other ways to have Linux/aarch64 running with, sadly, very little support for them on most popular package managers...
Also, it pays out to be future-proof — as even Apple is planning to launch ARM64-based notebooks later this year, I suppose that cross-architecture support will become a necessity for all kinds of package managers. Fortunately, Go itself works flawlessly across all kinds of hardware; but this is not the case for many tools out there (a typical example: there seems to be no simple way to add a C/C++ compiler to the Synology NAS — unless you compile it from source, which is hard, since Synology does not provide any 'native' compiler for achieving that... the only solution is to cross-compile
gcc
on, say, the Mac, and move over the binaries — and pray that they will work). I can believe that Darwin/aarch64 users will have a nasty surprise in December or so when they try to update theirgofish
packages...