Как установить пакет go после загрузки?
Я запустил это:
cd $GOPATH && go get -u github.com/zricethezav/gitleaks
недоумение, теперь у меня есть это:
$GOPATH/
src/
github.com/
gitleaks/
но нет bin/
папка... я бы ожидал увидеть здесь папку bin: $GOPATH/bin
я сделал что-то неправильно? Как установить пакет, чтобы появился бинарный файл? Я попытался запустить:
go install github.com/zricethezav/gitleaks
но после установки я не вижу bin/
папка...
Выход из go env
похоже:
GOARCH="amd64"
GOBIN="/Users/alex/go/bin"
GOCACHE="/Users/alex/Library/Caches/go-build"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOOS="darwin"
GOPATH="/Users/alex/go"
GOPROXY=""
GORACE=""
GOROOT="/usr/local/go"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/darwin_amd64"
GCCGO="gccgo"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
GOMOD=""
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/st/159q4vsd64b69_x99dtzzt6m0000gn/T/go-build133179815=/tmp/go-build -gno-record-gcc-switches -fno-common"
3 ответа
После go get
исполняемый файл gitleaks должен быть в $GO_PATH\bin
каталог, а не в $GO_PATH\src...\gitleaks
,
Смотрите это: https://pocketgophers.com/go-install-vs-go-build/
Я установил Голанг на MacOS с brew install go
и это, очевидно, не поместило основные двоичные файлы в /usr/local/go
вот почему мой go get
Команда не выполнена.
поэтому вместо использования brew я установил: https://golang.org/doc/install?download=go1.12.5.darwin-amd64.pkg
и после установки с помощью файла.pkg были файлы в /usr/local/go
так что тогда мой go get
Команда сработала.
Я предполагаю, что homebrew помещает исполняемые файлы в другое место, чем /usr/local/go
что-то вроде sux, но я мог понять почему.
Если $GOPATH не является корневым каталогом go, я думаю, вам нужно создать папку bin вручную. Я вручную создал папку $GOPATH/bin, и она работает нормально.