kahing / goofys

a high-performance, POSIX-ish Amazon S3 file system written in Go
Apache License 2.0
5.19k stars 520 forks source link

Cannot compile under AWS ARM 64 Server with Ubuntu 20.04 LTS Server #663

Open strategist922 opened 3 years ago

strategist922 commented 3 years ago

Hi, I have installed go version go1.16.2 linux/arm64 under AWS ARM server When I try to compile it from source code, it show me the following error:

ubuntu@arm64_server1:~$ go get github.com/kahing/goofys go: downloading github.com/kahing/goofys v0.24.0 go: downloading github.com/Azure/azure-sdk-for-go v0.2.0-beta go: downloading github.com/Azure/azure-pipeline-go v0.2.3 go: downloading github.com/Azure/azure-sdk-for-go v58.0.0+incompatible go: downloading github.com/Azure/go-autorest v1.1.1 go: downloading github.com/Azure/azure-storage-blob-go v0.14.0 go: downloading github.com/Azure/go-autorest/autorest v0.11.21 go: downloading github.com/Azure/go-autorest v14.2.0+incompatible go: downloading github.com/Azure/go-autorest/autorest/adal v0.9.16 go: downloading github.com/Azure/go-autorest/autorest/azure/auth v0.5.8 go: downloading github.com/Azure/go-autorest/autorest/azure/cli v0.4.3 go: downloading github.com/aws/aws-sdk-go v1.40.54 go: downloading github.com/google/uuid v1.3.0 go: downloading github.com/jacobsa/fuse v0.0.0-20210904154839-95fc8d118111 go: downloading github.com/mitchellh/go-homedir v1.1.0 go: downloading github.com/kardianos/osext v0.0.0-20190222173326-2bc1f35cddc0 go: downloading github.com/satori/go.uuid v1.2.0 go: downloading github.com/sevlyar/go-daemon v0.1.5 go: downloading github.com/shirou/gopsutil v3.21.9+incompatible go: downloading github.com/sirupsen/logrus v1.8.1 go: downloading golang.org/x/sys v0.0.0-20211004093028-2c5d950f24ef go: downloading github.com/urfave/cli v1.22.5 go: downloading gopkg.in/ini.v1 v1.63.2 go: downloading github.com/cpuguy83/go-md2man/v2 v2.0.0-20190314233015-f79a8a8ca69d go: downloading github.com/mattn/go-ieproxy v0.0.1 go: downloading github.com/Azure/go-autorest/autorest/date v0.3.0 go: downloading github.com/Azure/go-autorest/tracing v0.6.0 go: downloading github.com/Azure/go-autorest/logger v0.2.1 go: downloading github.com/golang-jwt/jwt/v4 v4.0.0 go: downloading golang.org/x/crypto v0.0.0-20210513164829-c07d793c2f9a go: downloading github.com/dimchansky/utfbom v1.1.1 go: downloading github.com/russross/blackfriday/v2 v2.0.1 go: downloading golang.org/x/net v0.0.0-20210614182718-04defd469f4e go: downloading github.com/jmespath/go-jmespath v0.4.0 go: downloading github.com/shurcooL/sanitized_anchor_name v1.0.0 go: downloading golang.org/x/text v0.3.6 go: downloading github.com/Azure/go-autorest/autorest/to v0.4.0 go: downloading github.com/Azure/go-autorest/autorest/validation v0.3.1 go: downloading github.com/gofrs/uuid v1.2.0 go: downloading github.com/StackExchange/wmi v1.2.1 go: downloading github.com/gofrs/uuid v4.0.0+incompatible go: downloading github.com/tklauser/go-sysconf v0.3.9 go: downloading github.com/tklauser/numcpus v0.3.0 go: downloading github.com/go-ole/go-ole v1.2.5

github.com/kahing/goofys/api/common

work/pkg/mod/github.com/kahing/goofys@v0.24.0/api/common/conf_azure.go:272:34: accountsRes.Value undefined (type storage.AccountListResultPage has no field or method Value) work/pkg/mod/github.com/kahing/goofys@v0.24.0/api/common/conf_azure.go:373:35: not enough arguments in call to client.ListKeys have (context.Context, string, string) want (context.Context, string, string, storage.ListKeyExpand)

May I know if current version support ARM architecture? If not, may I know when will goofys support ARM CPU?

Thanks and best regards.

geibee commented 2 years ago

@strategist922 Hi, though the version differs from yours, I compiled goofys with go1.17.2 on Raspberry Pi 4(linux/arm64) and it worked. The procedure is as follows.

git clone https://github.com/kahing/goofys.git
cd goofys
GOOS=linux GOARCH=arm64 go build

I hope it helps.

e8-MattLoidolt commented 2 years ago

Just to add to this, we are running into this same issue when trying to compile goofys for AWS ARM chips (Graviton2)

Screenshot of the steps and results

gaul commented 2 years ago

I fixed this upstream in jacobsa/fuse#102. goofys needs to update its dependency. @kahing @dotslash

alexmla commented 2 years ago

Tried today and it seems to be still an issue on x86 EC2 as well as I cannot compile this either. Same error.

zhangguy commented 2 years ago

@kahing could you add a linux arm64 binary to the release? we want to be able to use goofys in Graviton2 Arm64-based EC2 instances. it is hard to compile as seen from the above issues. Thanks a lot.

e8-HongJunLiu commented 1 year ago

This problem still exists, goofys is not supported on ARM instances.

samyswam commented 1 year ago

This problem still exists, goofys is not supported on ARM instances.