第一个Go语言程序
了解项目文件夹构成
在使用golang编写第一个Go语言程序之前,我们先了解一下Go语言的目录规则:
gopath目录就是我们存储编写源代码的目录,在gopath目录下应该有3个子文件夹
- src
- 里面每一个子目录都是一个包,包内是Go的源码文件
- pkg
- 存储编译生成后的目标文件
- bin
- 存储生成的可执行文件
从1.8版本之后,安装完成后会默认配置用户家目录/go
为GOPATH,并且在Go1.14及之后的版本中启用Go module模式之后,不一定非要将代码写到GOPATH目录下,我们可以使用默认的,也可以自己创建。
创建自己的项目文件夹
创建一下我们的目录文件夹,目的是为了管理我们的项目
- GoStudy
- src
- pkg
- bin
然后在src中创建我们的域名
项目包linux98.com
- src
- linux98.com
如果担心项目中会有冲突的包路径,可以选择在域名下再创建一个作者名
来存储项目代码
- src
- linux98.com
- cplinux98
- project01
- project02
- project03
...
最后的效果
C:\Users\49273\Documents\Study\GoStudy>tree
├─bin
├─pkg
└─src
└─linux98.com
└─cplinux98
配置IDE
配置一下IDE环境,这里我使用的是GoLand。
安装IDE忽略
新建一个项目
选择项目级别的gopath和goroot配置
在Goland中我们可以设置project级别的gopath
设置windows下Golang的Terminal为git-bash
编写HelloWorld
创建一个文件叫main.go的文件,并写入下面的内容
package main
import "fmt"
func main() {
fmt.Println("Hello World")
}
右键执行
生成可执行文件
在项目目录下执行go install
,就会在当前环境下的GOPATH/bin
目录生成可执行文件
go install
生成其他平台可执行文件
主要是在执行编译或者构建时,加上下面几个环境变量的值
CGO_ENABLED=0 // 禁用CGO
GOOS=linux // 目标平台,有linux\windows\darwin\freebsd
GOARCH=amd64 // 目标处理器架构,有amd64\386\arm64
生成linux
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go install
生成mac
# intel
CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go install
# m系列
CGO_ENABLED=0 GOOS=darwin GOARCH=arm64 go install
生成windows
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go install
CGO_ENABLED=0 GOOS=windows GOARCH=386 go install
CGO_ENABLED=0 GOOS=windows GOARCH=arm go install
CGO_ENABLED=0 GOOS=windows GOARCH=arm64 go install
不带参数时直接在bin目录下生成,带了参数会在对应系统和架构文件夹下生成
评论区