一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

Golang在Ubuntu上编译流程是什么

时间:2026-08-16 09:44:50 编辑:袖梨 来源:一聚教程网

Golang在Ubuntu上的编译流程

1. 准备工作:安装Golang环境

在编译Golang程序前,需先安装Golang编译器。有两种常见方式:

Golang在Ubuntu上编译流程是什么

  1. 通过APT包管理器安装(快速,适合大多数场景):运行以下命令更新包列表并安装Golang:
    sudo apt updatesudo apt install golang-go
  2. 从源码编译安装(适合需要特定版本或自定义的场景):先安装依赖项(Git、GCC、Make):
    sudo apt updatesudo apt install -y git gcc make
    克隆Go官方源码仓库:
    git clone https://github.com/golang/go.gitcd go/src
    设置环境变量(用于编译Go本身):
    export GOROOT_BOOTSTRAP=$(pwd)/../..export PATH=$GOROOT_BOOTSTRAP/bin:$PATH
    编译Go源码:
    cd $GOROOT./all.bash
    编译完成后,Go会安装在$HOME/go目录(源码编译方式)或/usr/local/go目录(APT安装方式)。

2. 配置环境变量

无论通过哪种方式安装,都需要配置环境变量以让系统识别Golang命令:编辑~/.bashrc~/.profile文件,添加以下内容:

export PATH=$PATH:/usr/local/go/bin# 替换为源码编译的安装路径(如$HOME/go/bin)export GOPATH=$HOME/go# 设置工作目录(存放代码和依赖)export GOBIN=$GOPATH/bin# 设置二进制文件输出目录export GO111MODULE=on # 启用Go Modules(推荐,管理依赖)

使配置生效:

source ~/.bashrc# 或 source ~/.profile

验证安装:

go version

若输出类似go version go1.21.0 linux/amd64,则说明安装成功。

3. 编写Golang程序

创建项目目录(推荐使用Go Modules管理依赖):

mkdir -p $GOPATH/src/myprojectcd $GOPATH/src/myproject

初始化Go模块(生成go.mod文件,记录依赖信息):

go mod init myproject

创建main.go文件,编写示例程序:

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

4. 编译Golang程序

  1. 编译单个文件:在main.go所在目录运行:

    go build main.go

    生成的可执行文件默认命名为main(Windows下为main.exe)。

  2. 编译整个项目:在项目根目录(含go.mod文件)运行:

    go build

    会自动编译项目中的所有依赖,并生成可执行文件。

  3. 交叉编译(为其他平台编译):例如,为Linux 64位系统编译(无需CGO):

    CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -o myproject-linux

    生成的myproject-linux可在Linux服务器上运行。

5. 运行编译后的程序

  1. 若使用go build生成可执行文件,直接运行:

    ./main# 或 ./myproject-linux(交叉编译后的文件)

    输出:Hello, Ubuntu Golang!

  2. 若使用go run直接运行(无需生成可执行文件):

    go run main.go

    效果与go build后运行一致。

6. 可选:使用Go Modules管理依赖

若项目需要第三方库,可通过go get命令下载并添加到go.mod文件:

go get github.com/gin-gonic/gin# 示例:下载Gin框架

之后运行go buildgo run时,Golang会自动处理依赖关系。

以上流程覆盖了Golang在Ubuntu上的完整编译过程,从环境准备到程序运行,适用于大多数开发场景。

热门栏目