Use C bootstrap ("prebuiltless") to build Go binary releases
Nobody has claimed this yet.
- Dominant language
- Go
- Stars
- 431
- Forks
- 44
- Avg merge
- 21h 18m
- Merged PRs (30d)
- 30
Description
For various reasons, a prebuiltless build is desirable. It's common for Linux distros to do this by building Go 1.4 (written in C), then using 1.4 to bootstrap later versions. (Starting with 1.19, an intermediate 1.17+ version will also be needed.)
https://go.dev/doc/install/source#bootstrapFromSource
It might be enough for us to build 1.4 binaries just once, then host it on our own infrastructure and use that prebuilt to build new versions. We can then potentially bridge the gap onto new platforms using cross-compilation.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The issue names no repository files or tests. Start with Go's bootstrap-from-source documentation and trace how Microsoft Go release binaries are built; determine whether Go 1.4 binaries can be hosted and used across target platforms, with a reproducible prebuiltless release process as the completion criterion.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c, go
- Domain
- build-system, compilers, release
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100