Maison  >  Article  >  développement back-end  >  Comment récupérer les valeurs GOOS et GOARCH à partir d’un exécutable Go compilé ?

Comment récupérer les valeurs GOOS et GOARCH à partir d’un exécutable Go compilé ?

Linda Hamilton
Linda Hamiltonoriginal
2024-11-01 06:00:31428parcourir

How Do You Retrieve GOOS and GOARCH Values from a Compiled Go Executable?

Détermination des valeurs GOOS et GOARCH pour les exécutables Go construits

Dans Go, les variables d'environnement GOOS et GOARCH définissent le système d'exploitation cible et l'architecture pour lesquels un programme est construit. Ces informations sont cruciales pour la compilation et l'exécution des exécutables Go.

Pour récupérer ces valeurs pour un exécutable Go compilé, vous pouvez utiliser le package d'exécution. Comme indiqué dans la documentation :

GOARCH, GOOS et GOROOT sont enregistrés au moment de la compilation

Les constantes runtime.GOOS et runtime.GOARCH permettent d'accéder à ces valeurs. Ils reflètent les paramètres exacts utilisés lors de la compilation de votre exécutable.

Pour illustrer cela, considérons le simple programme Go suivant :

<code class="go">package main

import "fmt"

func main() {
    fmt.Println(runtime.GOOS)
    fmt.Println(runtime.GOARCH)
}</code>

Lorsque vous intégrez ce programme dans un exécutable, le fichier enregistré les valeurs de GOOS et GOARCH persisteront dans l'exécutable. L'exécution de l'exécutable affichera le système d'exploitation cible et l'architecture utilisés lors de sa compilation.

Par exemple, si l'exécutable a été construit avec GOOS=linux et GOARCH=amd64, son exécution afficherait ce qui suit :

linux
amd64

Même si vous modifiez ultérieurement les variables d'environnement, l'exécutable affichera toujours les valeurs initialement enregistrées.

Par conséquent, en inspectant les constantes runtime.GOOS et runtime.GOARCH, vous pouvez déterminer le fonctionnement cible système et architecture pour lesquels un exécutable Go donné a été compilé.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn