CoreumFoundation / crust

5 stars 8 forks source link

Building cored fails on Mac M2 - missing crust-go-build:959801c8 locally #388

Open igorperic17 opened 7 months ago

igorperic17 commented 7 months ago

Hi, I am trying to build cored binary on my Mac MBP M2 by running

crust build/cored

after cloning the repo and adding $COREUM_PATH/crust/bin to my $PATH. This is the output I'm getting:

2024-04-17T07:54:23.566382+02:00 info crust golang/go.go:89 Building go package locally {"package": "../coreum/cmd/cored", "binary": "bin/cored"} 2024-04-17T07:54:30.26706+02:00 info crust golang/go.go:121 Building go package in docker {"package": "../coreum/cmd/cored", "binary": "bin/.cache/cored/docker.arm64/bin/cored"} Unable to find image 'crust-go-build:959801c8' locally docker: Error response from daemon: pull access denied for crust-go-build, repository does not exist or may require 'docker login': denied: requested access to the resource is denied. See 'docker run --help'. 2024-04-17T07:54:39.639276+02:00 error crust run/run.go:71 Application returned error: exit status 125: "/usr/local/bin/docker run --rm --label com.coreum.crust=crust -v /Users/igor/code/projects/coreum:/src -v /Users/igor/go:/go -v /Users/igor/Library/Caches/crust/bin/docker.arm64:/crust-cache --env GOPATH=/go --env GOCACHE=/crust-cache/go-build --workdir /src/coreum/cmd/cored --user 501:20 --name crust-build-cored-d705454a --env LIBRARY_PATH=/crust-cache/lib --env CGO_ENABLED=1 crust-go-build:959801c8 build -trimpath -ldflags=-w -s -extldflags=-static -X github.com/cosmos/cosmos-sdk/version.AppName=cored -X github.com/cosmos/cosmos-sdk/version.Version=84503b38d89d5acaef8c69dc2e269305d05a47f7 -X github.com/cosmos/cosmos-sdk/version.Commit=84503b38d89d5acaef8c69dc2e269305d05a47f7 -X github.com/cosmos/cosmos-sdk/version.BuildTags=muslc,netgo,ledger -X github.com/cosmos/cosmos-sdk/version.Name=coreum -tags=muslc,netgo,ledger -o /src/crust/bin/.cache/cored/docker.arm64/bin/cored ." github.com/CoreumFoundation/coreum-tools/pkg/libexec.Exec.func1.1 github.com/CoreumFoundation/coreum-tools@v0.4.1-0.20230627094203-821c6a4eebab/pkg/libexec/exec.go:58 github.com/CoreumFoundation/coreum-tools/pkg/parallel.runTask github.com/CoreumFoundation/coreum-tools@v0.4.1-0.20230627094203-821c6a4eebab/pkg/parallel/recover.go:41 github.com/CoreumFoundation/coreum-tools/pkg/parallel.(*Group).runTask github.com/CoreumFoundation/coreum-tools@v0.4.1-0.20230627094203-821c6a4eebab/pkg/parallel/group.go:121 runtime.goexit runtime/asm_arm64.s:1197 building package '../coreum/cmd/cored' failed github.com/CoreumFoundation/crust/build/golang.buildInDocker github.com/CoreumFoundation/crust/build/golang/go.go:177 github.com/CoreumFoundation/crust/build/golang.Build github.com/CoreumFoundation/crust/build/golang/go.go:83 github.com/CoreumFoundation/crust/build/coreum.buildCoredInDocker github.com/CoreumFoundation/crust/build/coreum/build.go:79 github.com/CoreumFoundation/crust/build/coreum.BuildCoredInDocker github.com/CoreumFoundation/crust/build/coreum/build.go:59 github.com/CoreumFoundation/coreum-tools/pkg/build.Executor.Execute.func1 github.com/CoreumFoundation/coreum-tools@v0.4.1-0.20230627094203-821c6a4eebab/pkg/build/build.go:85 runtime.goexit runtime/asm_arm64.s:1197 github.com/CoreumFoundation/coreum-tools/pkg/run.run github.com/CoreumFoundation/coreum-tools@v0.4.1-0.20230627094203-821c6a4eebab/pkg/run/run.go:71 github.com/CoreumFoundation/coreum-tools/pkg/run.Tool github.com/CoreumFoundation/coreum-tools@v0.4.1-0.20230627094203-821c6a4eebab/pkg/run/run.go:32 main.main github.com/CoreumFoundation/crust/build/cmd/main.go:16 runtime.main runtime/proc.go:267

I have found some references of --name tag causing problems: https://stackoverflow.com/questions/53640424/exit-code-125-from-docker-when-trying-to-run-container-programmatically

Currently trying to figure out if that's relevant, but any help or clues would be greatly appreciated.

Docker version 24.0.5, build ced0996 go version go1.21.0 darwin/arm64

igorperic17 commented 7 months ago

As a workaround I am using prebuilt binaries for arm64: https://github.com/CoreumFoundation/coreum/releases/download/v3.0.3/cored-client-darwin-arm64

I would still like to understand why would building from source fail.