目录
Go语言特点
- 没有头文件概念,.go走天下
- 强类型的语言,编译型语言(python是弱类型,解释型语言)
- 一个go语言的应用程序,在运行的时候是不需要依赖外部库的
- 把执行时需要的所有库都打包到程序中
- 所以会导致go程序比较大
- 如果import的包在程序中没有使用,那么程序就会不允许编译
- go语法是不区分平台的,支持交叉编译,即在Windows下面也可以编译一个程序,在Linux下运行,需要两个环境变量来控制
- GOOS:设定运行的平台
- mac:GOOS=darewin
- Linux:GOOS=linux
- windows:GOOS=windows
- GOARCH:目标平台的体系构架
- 386:GOARCH=386
- amd64:GOARCH=amd64
- arm:GOARCH=arm
- GOOS:设定运行的平台
然后我们在Terminal试一下这个操作
将Goland的Terminal设置为Git Bash
重启加载terminal终端即可
在Terminal下编译hello.go文件为Windows可执行文件
通过设置GOOS值进行交叉编译
Go命令
1. 编译.go文件,-o 指定生成文件的名字
- go build -o test.exe xxx.go
- go build xxx.go --> 自动生成一个.exe 文件,名字与原来xxx相同
2. go run *.go
- 直接运行程序,不会编译成exe文件
3. go env
- 可以查看当前go的环境变量
- 如果重新设置了环境变量,需要重启Goland才能生效
4. 安装程序命令 (类似make install)
- 如果我们想在任意位置都可以随意使用我们的程序,执行命令的话
- go install
先将我们环境变量配置上(需要重启Goland生效)
此时bin目录就会有我们install的exe文件,将bin放在环境变量里,这样在任何位置随时随地都可以执行