Skip to content

[Bug]: Go 1.26 doesn't support Windows-on-ARM 32bit, so croc tests fail #1086

@BrianHawley

Description

@BrianHawley

What happened?

Since you upgraded Go to 1.26 in CI tests, they fail to build croc on this line:

CGO_ENABLED=0 GOOS=windows GOARCH=arm go build -ldflags '-extldflags "-static"' -o croc-windows-arm.exe

What did you expect to happen?

CI tests to pass, at lease the build phase.

Steps to reproduce

Run CI.

croc version

not released yet

Operating System

Windows

OS Version

Check your CI

Relevant log output

go version go1.26.1 linux/amd64
go: unsupported GOOS/GOARCH pair windows/arm
Error: Process completed with exit code 2.

Additional context

This is because GOOS=windows GOARCH=arm support has been removed from Go in 1.26, as detailed here. GOOS=windows GOARCH=arm64 is still supported, and croc still works with that.

Croc either needs to remove support for windows/arm 32bit, or continue to build windows/arm with Go 1.24 using a different stage.

It's notable that there were known issues with Go generated binaries on windows/arm 32bit, which may or may not have affected croc. We can't know without running the tests on windows/arm 32bit. I don't have a Windows RT device, and don't know how to run those tests otherwise, so I don't know how to run those tests. Windows 11 is dropping or has dropped support for running 32-bit ARM binaries, so you might have to search for used hardware to run these tests.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions