Я пытаюсь установить doozer следующим образом:
$ goinstall github.com/ha/doozer
Я получаю эти ошибки.
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
будет установлено для вас в Go 1.8 (2017). Смотрите мой ответ нижеgoinstall
это действительно древний до Go1 и не существует с 2012 года.Ответы:
GOPATH
обсуждается вcmd/go
документации :GOROOT
обсуждается в инструкции по установке :(обновленная версия ответа Криса Банча .)
источник
go
, которая необходима для работы с Go. Например, использованиеgoinstall
в ОП теперь должно бытьgo get
./usr/local/Cellar/go/
. В этом случае путь экспорта должен быть установлен с помощьюexport GOROOT=/usr/local/Cellar/go/{version}
иexport PATH=$PATH:$GOROOT/bin
.export GOROOT=/usr/local/Cellar/go/1.2/libexec/
чтобы мой работал с варевом.Вот моя простая установка:
GOROOT, GOPATH, PATH установлены следующим образом:
Итак, вкратце:
GOROOT для компилятора / инструментов, которые идут от установки.
GOPATH предназначен для ваших собственных проектов go / сторонних библиотек (загружается с помощью «go get»).
источник
Первый запуск
go env
.Если вы видите, что go не установлен, вы можете установить его с помощью
homebrew
или с помощью пакета и / или другими способами.Если вы видите вывод, значит ваш
Go
установлен.Он показывает вам все envs, которые установлены и не установлены.
Если вы видите пустой для
GOROOT
:which go
(На моем компьютере:/usr/local/go/bin/go
)export GOROOT=/usr/local/go
Если вы видите пустой для
GOPATH
:~/GO_PROJECTS
export GOPATH=~/GO_PROJECTS
источник
which go
сделал это для меня. Он использовал другое место установки go из предыдущей установки с использованием Chocolatey. Удалил эту папку и удалил ее из переменной PATH. Теперь это работает. Спасибо!which go
команда не работает для меня в Windows 7. Как я могу найти, где я должен выполнить эту командуwhere go
покажет вам путь к исполняемому файлуexport GOPATH=~/GO_PROJECTS
сделал работуGOPATH
обсуждается здесь :И
GOROOT
обсуждается здесь :источник
sudo apt-get install golang
?go env
вы должны увидеть эту информацию, для меня это было/usr/lib/go/
Я прочитал
go help gopath
документы и был все еще невероятно смущен, но нашел этот маленький самородок с другой страницы Go Doc:http://golang.org/doc/code.html#GOPATH
источник
GOPATH должен указывать не на установку Go, а на ваше рабочее пространство (см. Https://golang.org/doc/code.html#GOPATH ). Всякий раз, когда вы устанавливаете какой-либо пакет с помощью go get или go install, он попадает в GOPATH. Вот почему он предупреждает вас, что вы совершенно определенно не хотите, чтобы случайные пакеты из Интернета были сброшены в вашу официальную установку.
источник
Начиная с версии 1.8 (2 квартал 2017 г.), для GOPATH по умолчанию будет установлено значение $ HOME / go.
Смотрите выпуск 17262 и комментарий Роба Пайка:
источник
Как уже упоминалось выше:
Для Windows это работало для меня (в окне Ms-dos):
Это создает переменную GOPATH, которую Ms-dos распознает при использовании следующим образом:
источник
В
GOROOT
частности, Go 1.9 автоматически установит путь установки.Даже если у вас установлено несколько Go, при вызове 1.9.x будет установлено
GOROOT
значение/path/to/go/1.9
(раньше, если он не установлен, он принимал путь по умолчанию, например/usr/local/go
илиc:\Go
).См. CL Go Review 53370 :
источник
Начиная с версии 2020 и Go версии 1.13+, в Windows лучший способ обновления GOPATH - просто ввести в командной строке:
источник
Вот одно решение (для одного пользователя):
go
жалуется, если вы измените.gopath
на.go
.Хотелось бы, чтобы они пошли с тем, как
rust/cargo
ребята, и просто собрали все в одном месте.источник
в OSX, я установил с Brew, вот настройка, которая работает для меня
источник
Я должен был добавить
в мой ~ / .bash_profile на Mac OS X
источник
Также есть случай, когда мы используем go, он компилирует все файлы go.
Допустим, у нас был один файл main.go, а затем мы изменили текущий файл на main_old.go, а затем добавили наш новый файл main.go. Затем, когда мы создадим наше приложение, все файлы go будут скомпилированы. Таким образом, эта ошибка может быть связана с ошибкой компиляции в некоторых других файлах go.
источник
После установки Go lang GOROOT является корневым каталогом установки.
Когда я взорвал двоичный файл Go Lang в каталоге Windows C: \, мой GOROOT должен быть C: \ go. Если установлено с помощью установщика Windows, это может быть C: \ Program Files \ go (или C: \ Program Files (x86) \ go, для 64-битных пакетов)
в то время как моя GOPATH - это местоположение исходного кода Go lang или рабочей области.
Если мой исходный код Go lang находится в C: \ Users \\ GO_Workspace, ваш GOPATH будет выглядеть так:
источник
Вам не нужно явно устанавливать
GOROOT
(современные версии Go могут выяснить это самостоятельно, основываясь на расположении исполняемого файла go).Кроме того, при попытке работать с ошибкой
vgo
:Удаление GOROOT, обновление моей GOPATH и
export GO111MODULE="on"
решение проблемы.ГОПАТ увидеть здесь
источник
значения должны быть (MACOS):
источник
Если вы используете дистрибутив, вы должны указать, где находятся включаемые файлы, например:
(Это для Fedora 20)
источник