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教程栏目。

更多相关文章

  1. Go命令行参数及标准输入输出介绍
  2. 解决使用go get命令被墙的问题
  3. golang如何获取目录下文件是否存在
  4. go get命令下载扩展包的几点说明
  5. golang读写文件的几种方法
  6. Golang判断文件是否能写入的方法
  7. golang如何读取文件是否存在
  8. golang读取文件是否存在
  9. golang判断是文件还是文件夹

随机推荐

  1. [置顶] Android 各类功能效果源代码集合
  2. Android设置android:clipChildren达到的
  3. android的大好时光结束进行时
  4. 王家林的81门一站式云计算分布式大数据&
  5. Android串口Serial服务解析
  6. Android技术专家 高焕堂 推荐这本书
  7. Android音乐播放器系列讲解之一
  8. Android的ps命令介绍和技巧
  9. Android:关于声明文件中android:process
  10. Android 6.0权限机制