在Ubuntu系统上将Golang程序打包为可执行文件,整体步骤并不复杂,但初学者稍不注意几个细节就容易卡壳。以下从零开始拆解完整流程,直到你能在终端中顺利运行自己编写的Go程序。

首先安装Go语言环境
前提是系统已经安装了Golang。如果尚未安装,打开终端执行两条命令即可完成:
sudo apt update
sudo apt install golang-go
安装之后,顺手用 go version 验证一下,显示版本号即表示安装成功。
环境变量配置不可忽略
Go的运行依赖两个关键变量:GOROOT 指向Go的安装路径,GOPATH 指向工作空间。在Ubuntu中,推荐将这组变量写入 ~/.profile 文件,这样每次登录时都会自动加载:
echo "export GOROOT=/usr/lib/go" >> ~/.profile
echo "export GOPATH=$HOME/go" >> ~/.profile
echo "export PATH=$PATH:$GOROOT/bin:$GOPATH/bin" >> ~/.profile
source ~/.profile
这里有一个小提示:source ~/.profile 仅对当前终端窗口生效;如果新开一个终端,变量已经在配置文件里写好了,无需重复执行。
创建工作空间与项目目录
按照Go的惯例,所有项目都应放置在 $GOPATH/src 目录下。创建一个名为 myapp 的文件夹:
mkdir -p $GOPATH/src/myapp
cd $GOPATH/src/myapp
这个目录就是你的项目根目录,随后的所有操作都在这里进行。
编写实际代码
使用你喜欢的编辑器创建一个 main.go 文件,写入最简单的“Hello, World!”程序——主要用于验证整个流程是否通畅:
package main
import "fmt"
func main() {
fmt.Println("Hello, World!")
}
编译生成可执行文件
最关键的一步来了。在项目目录下执行:
go build -o myapp main.go
这条命令会把 main.go 编译成一个名为 myapp 的二进制文件。注意,-o 参数指定了输出文件名;如果不写,默认会生成与包名相同的文件(包名为 main,不太友好)。
运行并查看结果
编译完成后,当前目录下会出现一个 myapp 文件。直接运行:
./myapp
如果一切顺利,终端会打印出“Hello, World!”。至此,你已经成功在Ubuntu上创建并运行了一个Golang可执行文件。
整个过程其实就这么几步。唯一值得留意的就是环境变量的配置——很多新手在这里翻车,导致 go build 找不到路径。只要按照上面步骤一步不落地执行,基本不会出问题。之后你编写更复杂的项目,流程也是一模一样:写代码、go build、运行,简单明了。
