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

go语言php编译,golang怎么编译相关推荐

  1. go语言php编译,Golang模板编译引擎FET

    在实际工作中,越来越多的新项目开始用go语言进行开发,如果是前后端分离的项目,对于前端开发人员来说,后端使用php或者go亦或者node等影响不是特别大.但如果是项目对SEO\兼容性有要求.需要采用同 ...

  2. php+使用go编译,golang如何编译

    Go语言中使用 go build 命令主要用于编译代码.在包的编译过程中,若有必要,会同时编译与之相关联的包. go build 有很多种编译方法,如无参数编译.文件列表编译.指定包编译等,使用这些方 ...

  3. golang不编译.html,golang之条件编译

    Go语言能够经过go/build包里定义的tags和命名约定来让Go的包能够运行不一样的代码.html 标签编译 在源代码里添加标注,一般称之为编译标签(build tag).编译标签采用靠近源代码文 ...

  4. ios上编译c语言的app,iOS App编译流程

    三大编译器详解GCC / Clang / LLVM 传统的编译器通常分为三个部分,前端(frontEnd),优化器(Optimizer)和后端(backEnd).在编译过程中,前端主要负责词法和语法分 ...

  5. 《编译与反编译技术》—第1章1.7节C语言程序的编译流程

    本节书摘来自华章出版社<编译与反编译技术>一书中的第1章,第1.7节C语言程序的编译流程,作者庞建民,陶红伟,刘晓楠,岳峰,更多章节内容可以访问云栖社区"华章计算机"公 ...

  6. java源程序编译型_Java语言的源程序不是编译型的,而是编译解释型的。

    Java语言的源程序不是编译型的,而是编译解释型的. 语言译解2情绪状态的种类有(). 程序感冒期间忌食以下哪些食物 区分团花剪纸的方法,不编译主要看单独纹样重复出现的情况的说法正确吗?( ) 编释型 ...

  7. 【golang】从源代码编译golang编译器

    文章目录 系统信息 下载并编译go1.4用作bootstrap编译器 下载golang源代码 编译最新的golang 检查golang编译版本信息 编译一个简单的go程序 系统信息 tsu5@hhvm ...

  8. c语言如何存储已编译内容,二级C语言教程章节测试13.编译预处理和动态存储分配...

    一.选择题 (1)有以下程序 main() { char p[]={'a', 'b', 'c'}, q[]="abc"; printf("%d %d\n", s ...

  9. 使用vi编辑器编辑一个C语言源程序hello.c,并使用编译工具GCC编译该源程序。

    一.关于gcc的下载: 1.**输入命令:**yum install gcc 2.检查是否安装成功:which gcc **二.**使用vi编辑器编写c语言程序并用gcc工具箱编译 1.touch h ...

  10. LLVM:Rust、Clang等语言的强大支持以及编译原理和过程

    新的开发语言如雨后春笋般涌现,比如 Mozilla 的 Rust.Apple 的 Swift 以及 Jetbrains 的 Kotlin 等等,当然很多好的语言也在不断迭代,比如 Java.这些语言为 ...

最新文章

  1. linux在生信的作用,【生信笔记】右键菜单打开WSL功能方法简介
  2. 向服务器请求数据的五种技术
  3. 【Java基础】一篇文章读懂多线程
  4. how is SAP UI5 oContext is determined
  5. Java发送邮件(带附件)
  6. js中写java集合代码,JS实现JAVA的List功能
  7. 服务器centos怎么部署_我什么都不会,怎么拥有自己的个人博客呢
  8. matlab蚁群算法代码,蚁群算法的matlab实现
  9. Mysql的limit用法
  10. delete语句与reference约束冲突怎么解决_一条简单的更新语句,MySQL是如何加锁的?...
  11. 《敏捷制造——敏捷集成基础结构设计》——2.3 集成基础结构数据访问模型
  12. H12-811 HCIA-Datacom 655 题新题库
  13. Unity SRP初识之URP
  14. 吃饭的时候吃饭,睡觉的时候睡觉。 (转)
  15. esxi虚拟服务器网络搭建,小姜学网络(使用VMware ESXi 5.5搭建VMware虚拟化平台一)...
  16. win10系统降级安装win7电脑系统教学
  17. 上夜班的linux运维都坑,运维是个坑,盘点背锅侠的点点滴滴~
  18. vncviewer退出全屏
  19. 成为顶流平台后 新氧阳谋峥嵘显露
  20. R学习之统计实验(五)--赶火车问题(R语言编程)-----数模

热门文章

  1. 2020年吉林省玉米种植分布数据/作物分布数据
  2. java.util.current_Java基础知识-java.util.concurrent包下常见类的使用
  3. 【数据结构】----将一个链表拆分为两个链表
  4. 合力叉车3d模型_文章分享:《种植体颈部壁厚度和基台螺钉尺寸的生物力学评估:3D非线性有限元分析》...
  5. php js 获取 客户端ip地址,JavaScript获取客户端IP的方法(新方法)
  6. drop sqlite 多个表_android sqlite 一次创建多个表
  7. 图:[营养美食知识竞赛-PPT双屏技术策划]浙江海洋学院营养美食知识竞赛结束.
  8. telnet 检测端口是否开放
  9. 利用maven的resources、filter和profile实现不同环境使用不同配置文件
  10. 大型网站应用之海量数据和高并发解决方案总结一二!