In this section, you will learn how to compile Go code. The good news is that you can compile your Go code from the command line without the need for a graphical application. Furthermore, Go does not care about the name of the source file of an autonomous program as long as the package name is main and there is a single main() function in it. This is because the main() function is where the program execution begins. As a result, you cannot have multiple main() functions in the files of a single project.
We will start our first Go program compilation with a program named aSourceFile.go that contains the following Go code:
package main import ( "fmt" ) func main() { fmt.Println("This is a sample Go program!") }
Notice that the Go community prefers to name the Go source file source_file.go instead of aSourceFile.go. Whatever you choose, be consistent.
In order to compile aSourceFile.go and create a statically linked executable file, you will need to execute the following command:
$ go build aSourceFile.go
After that, you will have a new executable file named aSourceFile that you will need to execute:
$ file aSourceFile aSourceFile: Mach-O 64-bit executable x86_64 $ ls -l aSourceFile -rwxr-xr-x 1 mtsouk staff 2007576 Jan 10 21:10 aSourceFile $ ./aSourceFile This is a sample Go program!
The main reason why the file size of aSourceFile is that big is because it is statically linked, which means that it does not require any external libraries to run.