温馨提示×

怎样在ubuntu编译golang程序

小樊
49
2026-10-16 02:20:21
栏目: 编程语言

在 Ubuntu 上编译 Go(Golang)程序通常分为 安装 Go 环境 和 编译程序 两部分。下面一步步说明。


一、安装 Go 环境

方法 1:使用 Ubuntu 官方仓库(版本可能较旧)

sudo apt update
sudo apt install golang-go

查看版本:

go version

方法 2:官方二进制安装(推荐,版本新)

  1. 去官网下载最新版(示例为 1.22):
wget https://go.dev/dl/go1.22.2.linux-amd64.tar.gz
  1. 解压到 /usr/local:
sudo rm -rf /usr/local/go
sudo tar -C /usr/local -xzf go1.22.2.linux-amd64.tar.gz
  1. 配置环境变量(加到 ~/.bashrc 或 ~/.zshrc):
export PATH=$PATH:/usr/local/go/bin
export GOPATH=$HOME/go
  1. 生效并验证:
source ~/.bashrc
go version

二、编写并编译 Go 程序

1. 创建示例程序

mkdir hello && cd hello
nano main.go

内容:

package main

import "fmt"

func main() {
    fmt.Println("Hello, Ubuntu!")
}

2. 初始化模块(Go 1.11+ 推荐)

go mod init hello

3. 编译程序

go build

会生成可执行文件:

./hello

三、常用编译方式

直接运行(不生成文件)

go run main.go

指定输出文件名

go build -o myapp

交叉编译(例如编译 Windows 程序)

GOOS=windows GOARCH=amd64 go build -o app.exe

静态编译(无依赖)

CGO_ENABLED=0 go build -ldflags "-s -w"

四、常见问题

  • command not found: go
    → 检查 PATH 是否配置正确

  • 网络问题(proxy)

go env -w GOPROXY=https://goproxy.cn,direct
  • 权限问题
chmod +x your_program

如果你有 具体项目结构 或 需要交叉编译 / 打包成服务,可以告诉我,我可以给你更具体的命令。

0 踩