The author encountered difficulty building a binary with Go 1.20 on Ubuntu 20.04, which required building Go 1.17 first.
They noted that the Go toolchain is dynamically linked against the system glibc, likely due to the need to download packages over the network, which requires looking up DNS names, a common cause of dynamically linking to glibc.
However, they learned that in Go 1.21 and later, the plan is for the compiler to be built using the pure Go resolver only and to be a static executable, which has already landed in the Go development version.
This will be a nice quality of life improvement for developers dealing with older Linux systems.















