golang--学习day04

文章介绍了$GOBIN环境变量的作用,它是存放可执行文件的目录。gobuild用于编译main包并生成可执行文件,而goinstall除了编译库文件外,也会处理main包,生成的可执行文件默认放在GOPATH/bin或配置的$GOBIN目录下。gomod特性从Go1.11版本开始引入,允许在非$GOPATH/src目录下进行编译,并优化了第三方包的管理。
摘要由CSDN通过智能技术生成

$GOBIN 环境变量

$GOBIN:用于存储可执行文件的目录的绝对路径

若配置了$GOBIN当go install 命令生成的是可执行文件时候,可执行文件会存放在此目录下

最先想到: $GOROOT/bin

go.exe 编译器的安装位置,默认是 $GOROOT/bin

修改env文件配置 go env -w 配置名 = 配置值

go build

go build: 编译包 GO 源码,生成可执行文件 前提有 main 包) 默认生成可执行文件的目录是当前目录包下 go build
只对 main 包有效,在当前目录编译生成一个可执行的二进制文件 go build .\uitl.go
#command-Tine-arguments runtime.main_main.f: function main is undeclared in the main package
go build 不带任何参数,会自动检索当前目录下所有main包的源文件,生成一个可执行文件

go install

go insta11: 编译包 GO 源码,主要用来生成库文件和生成可执行文件 是编译包文件(无main包),将编译后的包文件放到 pkg目录下 ( G O P A T H / p k g ) 二是编译生成可执行文件 ( 有 m a i n 包 ) ,没有配置 G O B I N ,将可执行文件放到 b i n 目录( GOPATH/pkg) 二是编译生成可执行文件(有main包),没有配置GOBIN,将可执行文件放到 bin目录( GOPATH/pkg)二是编译生成可执行文件(main),没有配置GOBIN,将可执行文件放到bin目录(GOPATH/bin),若配置了GOBIN 就在 GOBIN 目录

包名和目录名保证一致,但这不是强制规定同一目录下,所有源文件必须使用相同的包名称

go mod 特性编译影响 GO111MODULE

go mod的特性实在1.11版本中提出的,在1.16版本中默认开启了这项功能,主要有两个功能:不需要将当前的代码设置在 $GOPATH/src 目录下就能完成编译 (需要有 go.mod)
golang对第三方的包管理更为合适
解释:
默认不打开 go mod 功能时,所有的代码都需要在 $GOPATH/src 目录下才能完成编译与安装而引入了go mod功能之后,只需要当前代码是某个存在go.mod的目录,就可以进行编译。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值