一、体验GO
1、在项目目录下创建main.go文件
package main
import "fmt"
func main() {
fmt.print('Hello World!')
}
2、进行编译
-
右键点击"在终端中打开",然后使用“go build”命令进行编译 -
选择命令格式为cmd(默认是powershell,很不好用) -
设置cmd为默认终端格式 -
注意1:执行 go build命令,要看清路径,最好到main.go的上级目录中执行。否则会报错:‘package .: no Go files in E:\GoProject\src’ -
注意2:一定要将入口文件main.go保存后(Ctrl+s)再编译,否则会报错‘main.go:1:1: expected ‘package’, found ‘EOF’’ -
执行完成后,会生成一个.exe的可执行文件 -
此时,发现一个问题,我们生成的exe执行文件和main.go不在一个路径下(并不影响可执行文件的执行),原因是vs code的目录输出格式有问题,将目录整行输出换成树状输出
- 在"文件"中“首选项”中点击“设置” ,在搜索框中搜索“fold”,然后找到“Explorer: Compact Folders
”,将这个选项的√去掉 -
执行 helloWorld.exe 可执行文件,直接输出结果(注意:360安全卫士可能会将这个文件当成病毒,建议关闭360) -
直接使用go build,默认会以项目的名称来命名执行文件(即<项目名称>.exe),如果要自定义文件名称,需要加上-o参数指定文件名称
3、其他常用命令
1、go run命令
- 可以直接执行代码文件,类似于shell的sh(不会生成.exe的执行文件)
2、go install命令
- 相当于先执行go build命令进行编译,然后将生成的.exe文件发送到bin目录下(bin目录之前加入了环境变量,在任何地方都可以执行这个命令)
- 到cmd终端执行helloWorld命令测试
二、GO的跨平台编译
1、Windows平台cmd下按如下方式指定环境变量。
- 注意1:如果你使用的是PowerShell终端,那么设置环境变量的语法为$ENV:CGO_ENABLED=0。
- 注意2:SET GOOS=linux 后面一定不要有空格,否则执行go build时会报错“cmd/go: unsupported GOOS/GOARCH pair linux /amd64”
SET CGO_ENABLED=0
SET GOOS=linux
SET GOARCH=amd64
- 将文件上传Linux机器上运行
2、Mac 下编译 Linux 和 Windows平台 64位 可执行程序
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build
3、Linux 下编译 Mac 和 Windows 平台64位可执行程序
CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build
4、Windows下编译Mac平台64位可执行程序
SET CGO_ENABLED=0
SET GOOS=darwin
SET GOARCH=amd64
go build
|