标题主要说明了这一点。我知道我能做到set GOOS=linux
set GOARCH=amd64在我之前的 cmd 中go build,但我正在尝试编写构建脚本并使用 exec.Command 完成所有操作。我go build -o etc使用 exec.Command(它构建)工作,但是在执行以下任一命令后在测试脚本中打印出 GOOS 时:cmd := exec.Command("set", "GOOS=linux")
// OR
cmd := exec.Command("set GOOS=linux")我明白了windows。有任何想法吗?谢谢!
1 回答
largeQ
TA贡献2039条经验 获得超7个赞
我强烈建议你只使用像Gox这样的工具。它通过执行交叉编译到每个支持的构建目标gox
。如果您只想为某些目标构建,它也有选项。
至于你问的代码,exec.Command
不创建新进程,或者除了创建Cmd
结构之外真的做任何事情。os/exec 文档(特别是Command函数的文档)有一个您似乎正在尝试执行的示例 - 使用自定义环境变量分配执行另一个程序......请参阅Example (Environment)
链接文档的部分并尝试遵循该部分structure 如果你仍然想交叉编译你的方式。
- 1 回答
- 0 关注
- 111 浏览
添加回答
举报
0/150
提交
取消