J'essaie d'installer doozer comme ceci:
$ goinstall github.com/ha/doozer
Je reçois ces erreurs.
goinstall: os: go/build: package could not be found locally goinstall: fmt: go/build: package could not be found locally goinstall: io: go/build: package could not be found locally goinstall: reflect: go/build: package could not be found locally goinstall: math: go/build: package could not be found locally goinstall: rand: go/build: package could not be found locally goinstall: url: go/build: package could not be found locally goinstall: net: go/build: package could not be found locally goinstall: sync: go/build: package could not be found locally goinstall: runtime: go/build: package could not be found locally goinstall: strings: go/build: package could not be found locally goinstall: sort: go/build: package could not be found locally goinstall: strconv: go/build: package could not be found locally goinstall: bytes: go/build: package could not be found locally goinstall: log: go/build: package could not be found locally goinstall: encoding/binary: go/build: package could not be found locally
GOPATH
sera défini pour vous dans Go 1.8 (2017). Voir ma réponse cigoinstall
est vraiment ancien pré-Go1 et n'existe pas depuis 2012.Réponses:
GOPATH
est abordé dans lacmd/go
documentation :GOROOT
est abordé dans les instructions d'installation :(version mise à jour de la réponse de Chris Bunch .)
la source
go
commande, ce qui est essentiel pour travailler avec Go. Par exemple, l'utilisation degoinstall
l'OP devrait maintenant l'êtrego get
./usr/local/Cellar/go/
. Dans ce cas, le chemin d'exportation doit être défini avecexport GOROOT=/usr/local/Cellar/go/{version}
etexport PATH=$PATH:$GOROOT/bin
.export GOROOT=/usr/local/Cellar/go/1.2/libexec/
pour que le mien travaille avec de la bière.Voici ma configuration simple:
GOROOT, GOPATH, PATH sont définis comme suit:
Donc, en bref:
GOROOT est destiné aux compilateurs / outils issus de l'installation go.
GOPATH est pour vos propres projets go / bibliothèques tierces (téléchargées avec "go get").
la source
Première course
go env
.Si vous voyez que le go n'est pas installé, vous pouvez l'installer via
homebrew
ou via le package et / ou d'autres moyens.Si vous voyez une sortie, votre
Go
est installé.Il vous montre tous les envs qui sont définis et ne le sont pas.
Si vous voyez vide pour
GOROOT
:which go
(Sur mon ordinateur:/usr/local/go/bin/go
)export GOROOT=/usr/local/go
Si vous voyez vide pour
GOPATH
:~/GO_PROJECTS
export GOPATH=~/GO_PROJECTS
la source
which go
l'a fait pour moi. Il utilisait un autre emplacement d'installation go d'une installation précédente utilisant Chocolatey. Supprimé ce dossier et supprimé de la variable PATH. Maintenant ça marche. Merci!which go
la commande n'a pas fonctionné pour moi dans Windows 7. Comment puis-je trouver où dois-je exécuter cette commandewhere go
qu'elle vous montrera le chemin du fichier exécutéexport GOPATH=~/GO_PROJECTS
a fait du travailGOPATH
est discuté ici :Et
GOROOT
est discuté ici :la source
sudo apt-get install golang
?go env
vous devriez voir cette information, pour moi c'était/usr/lib/go/
J'ai lu les
go help gopath
documents et j'étais toujours incroyablement confus, mais j'ai trouvé ce petit pépite à partir d'une autre page go doc:http://golang.org/doc/code.html#GOPATH
la source
Le GOPATH ne doit pas pointer vers l'installation Go, mais plutôt vers votre espace de travail (voir https://golang.org/doc/code.html#GOPATH ). Chaque fois que vous installez un paquet avec go get ou go install, il atterrira dans le GOPATH. C'est pourquoi il vous avertit que vous ne voulez certainement pas que des packages aléatoires provenant d'Internet soient transférés dans votre installation officielle.
la source
À partir de go 1.8 (Q2 2017), GOPATH sera défini par défaut sur $ HOME / go
Voir le numéro 17262 et le commentaire de Rob Pike:
la source
Comme mentionné ci-dessus:
Pour Windows , cela a fonctionné pour moi (dans la fenêtre Ms-dos):
Cela crée une variable GOPATH que Ms-dos reconnaît lorsqu'elle est utilisée comme suit:
la source
En ce
GOROOT
qui concerne spécifiquement, Go 1.9 le définira automatiquement sur son chemin d'installation.Même si vous avez plusieurs Go installés, appeler celui de 1.9.x sera défini
GOROOT
sur/path/to/go/1.9
(avant, s'il n'est pas défini, il supposait un chemin par défaut comme/usr/local/go
ouc:\Go
).Voir CL Go Review 53370 :
la source
À partir de 2020 et Go version 1.13+, dans Windows, la meilleure façon de mettre à jour GOPATH est simplement de taper l'invite de commande:
la source
Voici une solution (utilisateur unique):
go
se plaint si vous passez.gopath
à.go
.Je souhaite qu'ils soient allés avec la façon dont les
rust/cargo
gars ont fait et ont simplement tout mis en un seul endroit.la source
en osx, j'ai installé avec brew, voici le paramètre qui fonctionne pour moi
la source
Je devais ajouter
à mon ~ / .bash_profile sur Mac OS X
la source
Il y a aussi un cas où lorsque nous utilisons go, il compile tous les fichiers go.
Disons donc que nous avions un fichier main.go et plus tard, nous avons changé le fichier actuel en main_old.go , puis ajouté notre nouveau fichier main.go. Ensuite, lorsque nous construisons notre application, tous les fichiers go seront compilés. L'erreur qui se produit peut donc être due à une erreur de compilation dans certains autres fichiers go.
la source
Une fois Go lang installé, GOROOT est le répertoire racine de l'installation.
Lorsque j'ai explosé le binaire Go Lang dans le répertoire Windows C: \, mon GOROOT devrait être C: \ go. S'il est installé avec le programme d'installation de Windows, il peut s'agir de C: \ Program Files \ go (ou C: \ Program Files (x86) \ go, pour les packages 64 bits)
tandis que mon GOPATH est l'emplacement du code source ou de l'espace de travail Go lang.
Si mon code source Go lang se trouve dans C: \ Users \\ GO_Workspace, votre GOPATH serait comme ci-dessous:
la source
Vous n'avez pas besoin de définir explicitement
GOROOT
(les versions modernes de Go peuvent le comprendre par elles-mêmes en fonction de l'emplacement du binaire go que vous exécutez).En outre, vous obtenez l'erreur suivante lorsque vous essayez de travailler avec
vgo
:Suppression de GOROOT, mise à jour de mon GOPATH et
export GO111MODULE="on"
résolution du problème.GOPATH voir ici
la source
les valeurs doivent être (MACOS):
la source
Si vous utilisez la distribution go, vous devez indiquer où se trouvent les fichiers include, par exemple:
(C'est pour Fedora 20)
la source