標題主要說明了這一點。我知道我能做到set GOOS=linux
set GOARCH=amd64在我之前的 cmd 中go build,但我正在嘗試編寫構(gòu)建腳本并使用 exec.Command 完成所有操作。我go build -o etc使用 exec.Command(它構(gòu)建)工作,但是在執(zhí)行以下任一命令后在測試腳本中打印出 GOOS 時:cmd := exec.Command("set", "GOOS=linux")
// OR
cmd := exec.Command("set GOOS=linux")我明白了windows。有任何想法嗎?謝謝!
1 回答

largeQ
TA貢獻2039條經(jīng)驗 獲得超8個贊
我強烈建議你只使用像Gox這樣的工具。它通過執(zhí)行交叉編譯到每個支持的構(gòu)建目標gox
。如果您只想為某些目標構(gòu)建,它也有選項。
至于你問的代碼,exec.Command
不創(chuàng)建新進程,或者除了創(chuàng)建Cmd
結(jié)構(gòu)之外真的做任何事情。os/exec 文檔(特別是Command函數(shù)的文檔)有一個您似乎正在嘗試執(zhí)行的示例 - 使用自定義環(huán)境變量分配執(zhí)行另一個程序......請參閱Example (Environment)
鏈接文檔的部分并嘗試遵循該部分structure 如果你仍然想交叉編譯你的方式。
- 1 回答
- 0 關注
- 146 瀏覽
添加回答
舉報
0/150
提交
取消