golang編譯時的參數傳遞(gcflags, ldflags)


go build 可以用-gcflagsgo編譯器傳入參數,也就是傳給go tool compile的參數,因此可以用go tool compile --help查看所有可用的參數。

其中-m可以檢查代碼的編譯優化情況,包括逃逸情況和函數是否內聯。

如果只在編譯特定包時需要傳遞參數,格式應遵守“包名=參數列表”,如go build -gcflags -gcflags='log=-N -l' main.go

go build用-ldflags給go鏈接器傳入參數,實際是給go tool link的參數,可以用go tool link --help查看可用的參數。

常用-X來指定版本號等編譯時才決定的參數值。例如代碼中定義var buildVer string,然后在編譯時用go build -ldflags "-X main.buildVer=1.0" ... 來賦值。注意-X只能給string類型變量賦值。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM