GO基础

GOPATH在不同平台上的路径

GO项目结构

在进行Go语言开发的时候,我们的代码总是会保存在GOPATH/srcgobuildgoinstallgogetGOPATH/src目录下。在工程经过gobuild、goinstall或goget等指令后,会将下载的第三方包源代码文件放在GOPATH/src目录下, 产生的二进制可执行文件放在 GOPATH/binGOPATH/bin目录下,生成的中间缓存文件会被保存在GOPATH/pkg 下。

如果我们使用版本管理工具(Version Control System,VCS。常用如Git)来管理我们的项目代码时,我们只需要添加$GOPATH/src目录的源代码即可。bin 和 pkg 目录的内容无需版本控制。

目前主流的项目结构

第一个go程序

package main  // 声明 main 包,表明当前是一个可执行程序

import "fmt"  // 导入内置 fmt 包

func main(){  // main函数,是程序执行的入口
    fmt.Println("Hello World!")  // 在终端打印 Hello World!
}

go build表示将源代码编译成可执行文件,还可以使用-o参数来指定编译后可执行文件的名字。
go build hello
go编译器会去 GOPATH的src目录下查找要编译的hello项目

跨平台编译

需要指定目标操作系统的平台和处理器架构:

SET CGO_ENABLED=0  // 禁用CGO
SET GOOS=linux  // 目标平台是linux
SET GOARCH=amd64  // 目标处理器架构是amd64

Mac 下编译 Linux 和 Windows平台 64位 可执行程序:

CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build

Linux 下编译 Mac 和 Windows 平台64位可执行程序:

CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build

Windows下编译Mac平台64位可执行程序:

SET CGO_ENABLED=0
SET GOOS=darwin
SET GOARCH=amd64
go build
原文地址:https://www.cnblogs.com/show58/p/12615064.html