标签: c go build release
在C中,我们可以构建二进制文件的调试版本或发行版本(目标文件和可执行文件)。我们怎么能在Go中做到这一点?
答案 0 :(得分:40)
在Go中,通常不具有调试版本或发行版本。
默认情况下,go build将符号和调试信息与二进制文件组合在一起。但是,您可以使用go build -ldflags "-s -w"删除符号和调试信息。
go build
go build -ldflags "-s -w"
答案 1 :(得分:9)
您可以指示链接器使用
go install -ldflags '-s'
我只是在一个相当大的可执行文件(GXUI样本之一)上尝试过它,这将它从~16M减少到~10M。一如既往,您的里程可能会有所不同......
Here是所有链接器选项的完整列表。