When using compiled languages like C/C++, Go, Rust, etc. a separate binary needs to be created for every OS and architecture the software is meant to run on. Cross-compilation can be daunting at first. In Go, it is built-in and straightforward to use.