mac上的交叉编译:CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build ./main.go
开发环境是mac, 生产环境是ubuntu, 显然mac上编译出来的二进制,没法在ubuntu上运行。于是乎,在mac上需要安装虚拟机, 用virtualbox + vagrant搞起,据我所知, 很多刚入职的同学,往往不能在一周的时间内(当然,这一周肯定有其他杂事,并不是说需要用一周来装虚拟机),把这个环境搞定。 真是搞笑啊。其实, 稍等了解一点交...
·
开发环境是mac, 生产环境是ubuntu, 显然mac上编译出来的二进制,没法在ubuntu上运行。
于是乎,在mac上需要安装虚拟机, 用virtualbox + vagrant搞起,据我所知, 很多刚入职的同学,往往不能在一周的时间内(当然,这一周肯定有其他杂事,并不是说需要用一周来装虚拟机),把这个环境搞定。 真是搞笑啊。
其实, 稍等了解一点交叉编译,就知道完全可以在mac上编译出在ubuntu上可运行的程序, 如:CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build ./main.go
一个命令,省掉了恼人的虚拟机安装和配置问题。略微奇怪的是, 貌似大家对虚拟机很有感情,应该是习惯的原因吧。
更多推荐
已为社区贡献6条内容
所有评论(0)