Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Use binutils-gold in builder image #377

Merged
merged 1 commit into from
Jun 9, 2021
Merged

Use binutils-gold in builder image #377

merged 1 commit into from
Jun 9, 2021

Conversation

hiddeco
Copy link
Member

@hiddeco hiddeco commented Jun 8, 2021

There seems to have been a change in the dependencies that now causes
ARMv7 builds to fail:

    sigs.k8s.io/kustomize/kyaml/yaml/merge3=$WORK/b742/_pkg_.a
    sigs.k8s.io/kustomize/kyaml/yaml/internal/k8sgen/pkg/util/errors=$WORK/b678/_pkg_.a
    -importcfg $WORK/b001/importcfg.link -buildmode=exe
-buildid=YHfd11eGufJ7RVGSGz2z/H9JgY3lbjsdhQ8_r06Gz/HiYQEtSgCAIHJ7rrNYN6/YHfd11eGufJ7RVGSGz2z
-extld=gcc $WORK/b001/_pkg_.a
    exit status 1
    -c CGO_ENABLED=1 go build -x -o source-controller main.go]: exit
code: 2

After trying various things, including downgrading Go, using
packages from edge, using gcc-go to get a "grouped" version of
the dependencies, it seems that using binutils-gold solves the issue
and produces a working build for all our target architectures.


@hiddeco hiddeco force-pushed the armv7-gold-patch branch from 2046c65 to 9302fb2 Compare June 8, 2021 17:59
@hiddeco hiddeco added the area/ci CI related issues and pull requests label Jun 9, 2021
@hiddeco hiddeco marked this pull request as ready for review June 9, 2021 08:24
@stefanprodan
Copy link
Member

stefanprodan commented Jun 9, 2021

Test image: ghcr.io/fluxcd/source-controller:binutils-gold-9302fb22

There seems to have been a change in the dependencies that now causes
ARMv7 builds to fail:

```
    sigs.k8s.io/kustomize/kyaml/yaml/merge3=$WORK/b742/_pkg_.a
    sigs.k8s.io/kustomize/kyaml/yaml/internal/k8sgen/pkg/util/errors=$WORK/b678/_pkg_.a
    -importcfg $WORK/b001/importcfg.link -buildmode=exe
-buildid=YHfd11eGufJ7RVGSGz2z/H9JgY3lbjsdhQ8_r06Gz/HiYQEtSgCAIHJ7rrNYN6/YHfd11eGufJ7RVGSGz2z
-extld=gcc $WORK/b001/_pkg_.a
    exit status 1
    -c CGO_ENABLED=1 go build -x -o source-controller main.go]: exit
code: 2
```

After trying various things, including downgrading Go, using
packages from `edge`, using `gcc-go` to get a "grouped" version of
the dependencies, it seems that using `binutils-gold` solves the issue
and produces a working build for all our target architectures.

Signed-off-by: Hidde Beydals <hello@hidde.co>
@hiddeco hiddeco force-pushed the armv7-gold-patch branch from 9302fb2 to 827509e Compare June 9, 2021 11:09
@hiddeco
Copy link
Member Author

hiddeco commented Jun 9, 2021

Image from above has been confirmed to run on 32-bit (RPiv3 / ARMv7) by @relu.

Copy link
Member

@stefanprodan stefanprodan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

Thanks @hiddeco

@hiddeco hiddeco merged commit 7f67fb7 into main Jun 9, 2021
@hiddeco hiddeco deleted the armv7-gold-patch branch June 9, 2021 12:58
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
area/ci CI related issues and pull requests
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants