内容简介:看这篇文章之前,你是否打包Go语言开发的项目时,是直接在命令行输入:在开发调试时是否是:然后看到开源的Go语言项目在运行时却是:
看这篇文章之前,你是否打包 Go 语言开发的项目时,是直接在命令行输入:
go build . 复制代码
在开发调试时是否是:
go run main.go 复制代码
然后看到开源的Go语言项目在运行时却是:
make build 复制代码
或者
make install 复制代码
我们打包运行这个过程,还有一个更加贴切的词语叫做构建项目。
今天给大家介绍下 Makefile 这个广为使用的构建工具,他是开源的,不仅仅适用于Go当中,C语言的项目或者C++的项目等同样都适用。
01 make简介
在软件开发中,make通常被视为一种软件构建工具。该 工具 主要经由读取一种名为“makefile”或“Makefile”的文件来实现软件的自动化建构。
它会通过一种被称之为“target”概念来检查相关文件之间的依赖关系,这种依赖关系的检查系统非常简单,主要通过对比文件的修改时间来实现。
在大多数情况下,我们主要用它来编译源代码,生成结果代码,然后把结果代码连接起来生成可执行文件或者库文件。
很多开源项目里面都在用到
这是最近比较火的以太坊上在GitHub上的源码截图,其他的我就不再截图了,接下来给大家介绍下怎么使用它开构建我们的项目。
02 安装
如果你是mac的系统,系统是自带了的,如果是 linux 就需要自己安装下make,命令很简单。
centons系统的make安装命令:
yum install -y make 复制代码
03 创建配置文件
我这里新建了一个工程,工程目录是这样:
main.go 里面的源码如下:
和我们以往的项目没啥区别,就多了一个 Makefile 文件,如果要使用 Makefile 去构建你项目,就需要在你的项目里面新建这个 Makefile 文件。
这里我贴一个简单的 Makefile 文件的源码:
BINARY_NAME=App run: go build -o bin/$(BINARY_NAME) -v ./bin/$(BINARY_NAME) 复制代码
解释下上面各行的意思:
- 第一行,声明了一个变量
BINARY_NAME他的值是App,方便后面使用 - 第二行,声明一个
target,其实你可以理解成一个对外的方法 - 第三行,这就是这个
target被调用时执行的脚本,这行就是build这个项目,编译后的二进制文件放在当前工程根目录下的bin目录下,名字是变量BINARY_NAME的值 - 第四行,这一行就是直接执行当前
bin目录下的二进制文件
注意:第三行,第四行前面一定要用 tab 键缩进,否者会报下面的错:
Makefile:3: *** missing separator. Stop. 复制代码
以上所述就是小编给大家介绍的《换Make来构建你的Go语言项目吧》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- java – 寻找HQL构建器(Hibernate查询语言)
- 医疗领域构建自然语言处理系统的经验教训
- Goa 1.3.0 发布,Go 语言构建微服务框架
- Goa 1.4.0 发布,Go 语言构建微服务框架
- 使用Gin框架构建一个简单的注册登录后台(Go语言)
- go语言[3]-数据结构-递归树构建17亿数据的内存模型
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
UML基础、案例与应用
施穆勒 / 李虎、赵龙刚 / 人民邮电出版社 / 2004-7-1 / 42.00元
本书教读者循序渐进地、系统地学习UML基础知识和应用技术。和前一版相比,本书内容根据UML 2.0进行了补充和更新,随书光盘包含了建模工具Poseidon的试用版。 全书分为三部分24章。第一部分“基础知识”包括第1章到第15章,主要是介绍UML语言的基础知识以及面向对象的概念和思想,还简单介绍了UML在开发过程的应用方法。第二部分“学习案例”包括第16章到第22章,结合实例详细分析了UML的应用......一起来看看 《UML基础、案例与应用》 这本书的介绍吧!