第二章:go 注意事项(各个平台编译方式)

重点注意: //函数的"{"必须和函数名在一行,换到下一行就是语法错误,强制代码风格

go mod init 《这里针对老版本》

使用go module模式新建项目时,我们需要通过go mod init 项目名命令对项目进行初始化,该命令会在项目根目录下生成go.mod文件。例如,我们使用hello作为我们第一个Go项目的名称,执行如下命令。

go mod init hello
编写代码

接下来在该目录中创建一个main.go文件:

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

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

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

编译

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

go run main.go  // 编译某个文件

go run

go run main.go也可以执行程序,该命令本质上是先在临时目录编译程序然后再执行。

注意:我们还可以使用-o参数来指定编译后得到的可执行文件的名字。

go build -o heiheihei.exe   // windows 平台 之后执行: heiheihei.exe

go build -0 heihei // mac 平台   之后执行: ./heihei

各个平台编译方式:

Windows编译Mac可执行文件

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

cmd终端下执行:

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

PowerShell终端下执行:

$ENV:CGO_ENABLED=0
$ENV:GOOS="darwin"
$ENV:GOARCH="amd64"
go build
Mac编译Linux可执行文件

Mac电脑编译得到Linux平台64位可执行程序:

CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build
Mac编译Windows可执行文件

Mac电脑编译得到Windows平台64位可执行程序:

CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build
Linux编译Mac可执行文件

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

CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build
Linux编译Windows可执行文件

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

CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build

你可能感兴趣的:(golang,golang)