I have already brew install mingw-w64. When i check the versions its there.
gcc --version:
gcc (Homebrew GCC 11.2.0_3) 11.2.0
.
g --version:
g (Homebrew GCC 11.2.0_3) 11.2.0
I also run which gcc:
/opt/homebrew/bin/gcc
Then I run my docker-compose with image golang:latest
. No errors yet
up to date, audited 370 packages in 10m
9 packages are looking for funding
run `npm fund` for details
6 high severity vulnerabilities
To address issues that do not require attention, run:
npm audit fix
To address all issues (including breaking changes), run:
npm audit fix --force
Run `npm audit` for details.
Unlinking stale socket /tmp/supervisor.sock
[15:30:39] Using gulpfile /go/src/github.com/projectname/src/api/gulpfile.js
[15:30:39] Starting 'default'...
[15:30:39] Starting 'watch'...
When I save a .go file it downloads all mods and this is the error:
# github.com/projectname/api
/usr/local/go/pkg/tool/linux_arm64/link: running gcc failed: exit status 1
collect2: fatal error: cannot find 'ld'
compilation terminated.
[15:46:23] 'build-binary' errored after 1.98 s
[15:46:23] Error in plugin "gulp-shell"
Message:
Command `go build` failed with exit code 2
This is my Dockerfile
:
FROM golang:1.17.0-alpine3.14 AS builder
RUN apk update && apk add gcc make git libc-dev binutils-gold
# Install dependencies
RUN apk add --update tzdata \
--no-cache ca-certificates git wget \
nodejs npm \
g \
supervisor \
&& update-ca-certificates \
&& npm install -g gulp gulp-shell
RUN npm install -g yarn
COPY ops/api/local/supervisor /etc
ENV PATH $PATH:/go/bin
WORKDIR /go/src/github.com/projectname/src/api
CodePudding user response:
Try and check if, as in this Dockerfile, adding binutils-gold
would allow you to use ld
.
RUN apk update && apk add gcc make git libc-dev binutils-gold
(First seen in nodejs/node
issue 4212)