Wenn Binärdateien an einen bestimmten Speicherort verschoben werden sollen, können Sie die Umgebungsvariable verwenden GOBIN
:
Das Verzeichnis bin / enthält kompilierte Befehle. Jeder Befehl wird nach seinem Quellverzeichnis benannt, aber nur nach dem letzten Element, nicht nach dem gesamten Pfad. Das heißt, der Befehl mit der Quelle in DIR / src / foo / quux wird in DIR / bin / quux installiert, nicht in DIR / bin / foo / quux. Das foo / wird entfernt, damit Sie DIR / bin zu Ihrem PATH hinzufügen können, um zu den installierten Befehlen zu gelangen. Wenn die Umgebungsvariable GOBIN festgelegt ist, werden Befehle in dem Verzeichnis installiert, das sie anstelle von DIR / bin benennt.
Quelle: http://golang.org/cmd/go/#hdr-GOPATH_environment_variable
GOBIN=/usr/local/bin/ go install
Wenn Sie ein Projektverzeichnis wünschen bin/
, können Sie einfach Ihren Projektpfad an anhängen. GOPATH
Sie müssen jedoch Ihren Code unter haben $project-path/src/
und go install
alle Binärdateien einfügen $project-path/bin
.
export GOPATH=/dir1:/dir2:/dir3
Wenn GOBIN nicht festgelegt ist, landen Binärdateien aus / dir1 / src in / dir1 / bin, Binärdateien aus / dir2 / src in / dir2 / bin usw. (und Binärdateien aus $ GOROOT / src in $ GOROOT) /Behälter).
Quelle: https://groups.google.com/forum/#!topic/golang-nuts/-mN8R_Fx-7M
Und Sie können auch einfach verwenden (danke JimB):
go build -o /path/binary-name
go build -o
blah.a
) zu$GOPATH/pkg/
.go build
vs.go install:
Ein Paketbaum nach
go build
undgo install
:. ├── bin │ └── hello # by go install └── src └── hello ├── hello # by go build └── hello.go
Detailliertere Informationen .
quelle
go install
auch? Oder muss ichgo build
vor der Installation ausgeführt werden?go install
ist genug, aber seine Exec-Datei erstellt imbin/
Verzeichnis