@DKENdhdhdasd

Как использовать GOOS в exec.Command?

мне нужно скомпилировать прогу для винды через exec.Command (линукс).

exec.Command("GOOS=windows", "go", "build", ".")

Output:
cmd.Run() failed with exec: "GOOS=windows": executable file not found in $PATH


В инете нашел такой способ:

exec.Command("bash", "-c", "GOOS=windows", "go", "build", ".")

Но теперь ничего не пишет, никаких ошибок нет и файл не скомпилировался.
Без GOOS=windows нормально работает
  • Вопрос задан
  • 90 просмотров
Пригласить эксперта
Ответы на вопрос 2
Способ из инета костыльный, по-хорошему нужно делать так:

cmd := exec.Command("go", "build", ".")
cmd.Env = os.Environ()
cmd.Env = append(cmd.Env, "GOOS=windows")
Ответ написан
@deliro
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы