golang build 时常会用到以下参数,如:
go build -ldflags="-s -w -H windowsgui" maim.go -o main.exe
1.-s strip 去掉无用的符号
2.-w DWARF 去掉DWARF调试信息,得到的可执行程序不可用调试器调试
3.-H windowsgui 生成带GUI界面的程序时,可去掉dos黑框
以上为3个常用的参数,此外-ldflags '-extldflags "-static"' 为静态编译
如果,想更加清楚的看到编译过程可加-x 参数,如bulid -x ......
-H windowsgui隐藏go自己输出的命令行窗口, 隐藏调用的外部程序的cmd窗口:
cmd:=exec.Command("sth") if runtime.GOOS=="windows" { cmd.SysProcAttr = &syscall.SysProcAttr{HideWindow: true} }
发表评论 取消回复