文章目录

  • 一 安装Go语言
  • 下载
  • windows
  • mac
  • linux
  • 二 搭建Go语言开发环境
  • 配置GOROOT和GOPATH环境变量
  • GOPROXY
  • Go开发编辑器
  • 选择使用`Goland`
  • 选择使用`vs code`
  • 下载安装
  • 配置
  • 三 Go初体验
  • 3.1 Hello World
  • 编译: go build
  • 当成脚本执行: go run
  • 编译并安装到`bin`: go install
  • 交叉编译


一 安装Go语言

Go语言1.14版本之后推荐使用go modules管理以来,也不再需要把代码写在GOPATH目录下了

下载

下载地址

Go官网下载地址:https://golang.org/dl/

Go官方镜像站(推荐):https://golang.google.cn/dl/

windows

在windows系统中安装go只需要下载可执行文件,然后一路下一步安装,即可

mac

下载可执行文件版,直接点击下一步安装即可,默认会将go安装到/usr/local/go目录下

linux

下载

wget https://dl.google.com/go/go1.14.1.linux-amd64.tar.gz

解压

tar -zxvf go1.14.1.linux-amd64.tar.gz -C /usr/local # 解压

配置环境变量

打开/etc/profile,输入如下内容

export GOROOT=/usr/local/go export PATH=$PATH:$GOROOT/bin

重启电脑使文件生效

二 搭建Go语言开发环境

配置GOROOT和GOPATH环境变量

GOROOTGOPATH都是环境变量,其中GOROOT是我们安装go开发包的路径,
而从Go 1.8版本开始,Go开发包在安装完成后会为GOPATH设置一个默认目录,
参见下表

平台

GOPATH默认值

举例

Windows

%USERPROFILE%/go

C:\Users\用户名\go

Unix

$HOME/go

/home/用户名/go

GOPROXY

Go1.14版本之后,都推荐使用go mod模式来管理依赖环境了,
也不再强制我们把代码必须写在GOPATH下面的src目录了,
你可以在你电脑的任意位置编写go代码。(网上有些教程适用于1.11版本之前。)

默认GoPROXY配置是:GOPROXY=https://proxy.golang.org,direct
由于国内访问不到https://proxy.golang.org,所以我们需要换一个PROXY
这里推荐使用https://goproxy.iohttps://goproxy.cn

可以执行下面的命令修改GOPROXY

go env -w GOPROXY=https://goproxy.cn,direct

Go开发编辑器

Go采用的是UTF-8编码的文本文件存放源代码,理论上使用任何一款文本编辑器都可以做Go语言开发,
这里推荐使用VS CodeGolandVS Code是微软开源的编辑器,而Golandjetbrains出品的付费IDE

选择使用Goland

只需要下载安装包一路下一步安装就可以

选择使用vs code

下载安装

VS Code官方下载地址: https://code.visualstudio.com/Download

一路下一步安装

配置
  1. 安装中文简体插件
  2. 安装go扩展

三 Go初体验

新建一个目录code, 在code目录下新建bin pkg src三个目录

  • bin: go编译生成的二进制文件
  • src: go源码
  • pkg: 编译生成的中间包

然后修改环境变量

  1. 修改为: GOPATH=%your catalogue%\code
  2. %your catalogue%\code\bin添加到Path环境变量中

3.1 Hello World

src中新建一个目录,在目录中新建main.go, 编写如下代码

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

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

func main()  {  // main函数,是程序执行的入口
	fmt.Println("hello world")  // 在终端打印 Hello World!
}
  • 函数外面只能进行变量/常量的声明
  • 函数外不能进行语句的书写

编译: go build

go build表示将源代码编译成可执行文件

切换到项目目录下执行

go build

在其他目录执行go build

go build gitee.com.duyupeng36/HelloWorld
  • 目录是src之后的目录
  • go编译器会去 GOPATHsrc目录下查找你要编译项目

编译指定可执行文件的名称

go build -o heiheihei.exe

当成脚本执行: go run

go run xx.go
  • 可以直接执行xx.go文件

编译并安装到bin: go install

进入项目目录执行如下代码

go install xx.go
  • 先编译,然后将编译生成的二进制文件移动到GOPATH\bin目录下

交叉编译

默认我们go build的可执行文件都是当前操作系统可执行的文件,
如果我想在windows下编译一个linux下可执行文件,那需要如下

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

使用了cgo的代码是不支持跨平台编译的

然后再执行go build命令,得到的就是能够在Linux平台运行的可执行文件了


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   # 编译mac可执行程序
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build  # 编译windows可执行程序

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

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