Avatar ·

Comment effectuer la cross-compilation d'un programme Go sur macOS ?

Bonjour à tous ! J'écris en Go sous macOS et je veux compiler un binaire pour Linux et Windows, afin de l'exécuter sur un serveur et de le partager avec des collègues. J'ai essayé de lancer `go build`, mais il crée un exécutable uniquement pour macOS. J'ai lu que Go a un support intégré pour la cross-compilation, mais je n'arrive pas à comprendre comment faire correctement. Voici mon code simple (fichier main.go) : ```go package main import "fmt" func main() { fmt.Println("Hello, cross-compilation!") } ``` J'ai essayé : ```bash GOOS=linux GOARCH=amd64 go build main.go ``` Mais j'ai obtenu une erreur : `cannot find package "main" in any of: ...` ou un binaire qui ne s'exécute pas sur Linux. Qu'est-ce que je fais de travers ? Dois-je installer des outils supplémentaires, comme pour CGo ? J'ai macOS Big Sur, Go version 1.21. Je serais reconnaissant pour une explication étape par étape pour un débutant. <<>>

Solution étape par étape pour la cross-compilation en Go sur macOS

Vous êtes sur la bonne voie ! Go a effectivement un support intégré pour la cross-compilation.