3.1.2 怎样编译Go语言程序

编译程序源代码是为了生成可执行文件。Go语言中编译源代码的方法主要有以下两个。

第一个方法是使用go build命令。进入hello.go程序源代码所在的目录,执行go build命令,即可在当前目录下编译生成名为hello.exe的可执行程序文件。

如图3.6所示,执行go build命令后,用dir命令列出该目录下的文件时,发现有一个hello.exe文件,说明编译成功。如果出现错误信息,请检查程序输入是否错误,或者是否成功保存源代码文件。

图3.6 用go build命令编译Go语言代码

第二个方法是使用go install命令。执行该命令的方法和结果与go build命令类似,唯一的不同是生成的可执行程序文件被放在Go语言开发根目录下的bin子目录下,对于我们目前设定的环境来说即C:\goprjs\bin目录下。“install”是“安装”的意思,表示把Go语言生成的程序安装到相应的bin目录下。

如图3.7所示,执行go install命令后,发现C:\goprjs\bin目录下有一个hello.exe文件。同时,如果用go build在代码目录中生成过可执行文件,会发现该文件已经被删除。

图3.7 用go install命令编译并安装Go语言程序

使用go install编译的好处是所有的可执行文件都被生成在一个统一的目录下,而该目录(按本书中所搭建的环境即C:\goprjs\bin目录)已经在前面被我们加入PATH环境变量中,那么我们可以在任何目录下执行需要的Go语言可执行程序,而无须在每个程序的源代码目录下分别执行该程序。另外,不在源代码目录下放置可执行文件,也可避免给源代码目录造成混乱。

小知识补充

Windows系统中,可以在CMD中用“path”命令查看当前的PATH变量,一般用于检验其中是否正确包含了我们所设置的路径。环境变量PATH在Windows的有些版本中大小写有一定区别,例如会是“Path”等,这都是可以的,但在Mac OS和Linux中应该都是大写,因此本书后面将统一用大写的“PATH”来表示。PATH环境变量在操作系统中非常重要,在命令行界面中执行程序时,如果仅输入文件名,则会根据PATH变量依次查找其中的路径中是否有该程序,并执行第一个找到的程序。另外,Windows中还可以用“set”命令查看所有的环境变量。

在LiteIDE中,也可以直接对Go语言源代码进行编译,如图3.8所示,在“编译”菜单中选择“Build”或“Install”即可分别进行等同于go build或go install命令的操作,也可以直接用快捷键来编译。在Windows系统中,Build操作的快捷键默认为“Ctrl+B”,Install操作的快捷键默认为“Ctrl+F8”。

图3.8 在LiteIDE中编译Go语言程序