golang编译的方法:
1、使用go build命令编译
go build命令用于编译我们指定的源码文件或代码包以及它们的依赖包。
例如,如果我们在执行go build命令时不后跟任何代码包,那么命令将试图编译当前目录所对应的代码包。例如,我们想编译goc2p项目的代码包logging。其中一个方法是进入logging目录并直接执行该命令:
hc@ubt:~/golang/goc2p/src/logging$ go build
因为在代码包logging中只有库源码文件和测试源码文件,所以在执行go build命令之后不会在当前目录和goc2p项目的pkg目录中产生任何文件。
2、使用go install命令编译
go install 只是将编译的中间文件放在 GOPATH 的 pkg 目录下,以及固定地将编译结果放在 GOPATH 的 bin 目录下。
这个命令在内部实际上分成了两步操作:第一步是生成结果文件(可执行文件或者 .a 包),第二步会把编译好的结果移到 $GOPATH/pkg 或者 $GOPATH/bin。
使用 go install 来执行代码,参考下面的 shell:
$ export GOPATH=/home/davy/golangbook/code $ go install chapter11/goinstall
golang 的go build、go install 命令都是可生成可实行文件。
go install 和 go build 在没有参数时运行,都会在当前目录下编译,如果当前目录是软件主程序(package main)
go build 会生成可实行文件放在当前目录中,go install 则会把它放到 $GOPATH/bin 中。
go install 还会把导入的依赖包编译到 $GOPATH/pkg,并缓存,如果包未做更改,下次编译则直接使用缓存。 go build 命令加参数 -i 也能达到go install 的效果。
更多golang知识请关注PHP中文网golang教程栏目。
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!