Я пытаюсь установить web.go
, но бег go get github.com/hoisie/web
возвращает
package bufio: unrecognized import path "bufio"
package bytes: unrecognized import path "bytes"
package crypto/rand: unrecognized import path "crypto/rand"
package crypto/sha1: unrecognized import path "crypto/sha1"
package crypto/tls: unrecognized import path "crypto/tls"
package encoding/base64: unrecognized import path "encoding/base64"
package encoding/binary: unrecognized import path "encoding/binary"
package encoding/json: unrecognized import path "encoding/json"
package errors: unrecognized import path "errors"
package fmt: unrecognized import path "fmt"
и это продолжается некоторое время с различными пакетами, прежде чем ничего больше не возвращается. go env
дает мне:
GOARCH="amd64"
GOBIN="/usr/local/go/bin"
GOCHAR="6"
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH=""
GORACE=""
GOROOT="/home/me/go"
GOTOOLDIR="/home/me/go/pkg/tool/linux_amd64"
TERM="dumb"
CC="gcc"
GOGCCFLAGS="-g -O2 -fPIC -m64 -pthread"
CXX="g++"
CGO_ENABLED="1"
Как мне установить web.go
? Использование go get
(а не go install
) - это то, что есть в README на странице github. Моя версия Go есть go version go1.2 linux/amd64
.
go
installation
q3d
источник
источник
Ответы:
Проблемы связаны с инвалидом
GOROOT
.Думаю, вы установили Go in
/usr/local/go
.Так что измените свой
GOROOT
путь на значение/usr/local/go/bin
.Похоже, вы хотели разместить свое рабочее пространство (GOPATH) по адресу
/home/me/go
.Это может решить вашу проблему.
Добавьте это в конец вашего профиля bash, расположенный здесь =>
$HOME/.profile
export GOROOT=/usr/local/go export GOPATH=$HOME/go export PATH=$PATH:$GOROOT/bin
Обязательно удалите старые ссылки на
GOROOT
.Затем попробуйте снова установить web.go.
Если это не сработает, попросите Ubuntu установить Go за вас.
sudo apt-get install golang
Видеоурок: http://www.youtube.com/watch?v=2PATwIfO5ag
источник
go get
выдает ту же ошибку.GOROOT
установлен на/usr
, иди сам установлен в / usr, а не в / usr / local. УстановитеGOPATH
на$HOME/go
. Есть идеи, что еще проверить?GOROOT
кажется, решило проблему.echo $GOROOT
затем проверил, что GO все еще имеет его в окружении, сgo env
которым он работал, и он был/usr/local/go
там, где я был установлен (поэтому нет необходимости устанавливать его в любом случае)Я установил Go with
brew
на OSX 10.11 и обнаружил, что мне нужно установитьGOROOT
:/usr/local/Cellar/go/1.5.1/libexec
(Конечно, замените версию в этом пути имеющейся у вас версией go)
Brew использует символические ссылки, которые обманывают gotool. Так что переходите по ссылкам домой.
источник
У меня была точно такая же проблема после перехода от старой версии go (установленной из старого PPA) к более новым (1.2.1) пакетам по умолчанию в ubuntu 14.04.
Первым шагом была очистка существующего го:
Что выводит следующие предупреждения:
dpkg: warning: while removing golang-go, directory '/usr/lib/go/src' not empty so not removed dpkg: warning: while removing golang-go.tools, directory '/usr/lib/go' not empty so not removed
Похоже, что при удалении go некоторые файлы остаются, что, в свою очередь, может запутать более новую установку. Точнее, сама установка завершится нормально, но после этого любая команда go, например «go get something», выдает эти ошибки «нераспознанный путь импорта».
Все, что мне нужно было сделать, это сначала удалить эти каталоги, переустановить golang, и все работает как шарм (при условии, что вы также установили GOPATH)
# careful! sudo rm -rf /usr/lib/go /usr/lib/go/src sudo apt-get install golang-go golang-go.tools
источник
/usr/local/go/
Потому что GFW запретил вам доступ к golang.org! И когда я использую прокси, он может хорошо работать.
вы можете посмотреть информацию, используя команду
go get -v -u golang.org/x/oauth2
источник
http://ping.eu/nslookup/
найти правильный IP-адрес домена, укажите его в файле hosts, затем используйте прокси-сервер для загрузки.export http_proxy=127.0.0.1:1080 https_proxy=127.0.0.1:1080
Иногда вы просто хотите сказать правительству слово на$ unset GOROOT
работал у меня. Как показывает большинство ответов, ваш GOROOT недействителен.источник
У меня была такая же проблема на MacOS 10.10. И я обнаружил, что проблема вызвана оболочкой OhMyZsh. Затем я снова переключился на bash, все прошло нормально.
Вот мой go env
bash-3.2$ go env GOARCH="amd64" GOBIN="" GOCHAR="6" GOEXE="" GOHOSTARCH="amd64" GOHOSTOS="darwin" GOOS="darwin" GOPATH="/Users/bis/go" GORACE="" GOROOT="/usr/local/go" GOTOOLDIR="/usr/local/go/pkg/tool/darwin_amd64" CC="clang" GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fno-common" CXX="clang++" CGO_ENABLED="1
источник
go env
когда не сработало или когда сработало? Вероятно, это было не «вызвано [другой оболочкой]», скорее, скорее всего, это была неправильная установкаGOPATH
в этой другой оболочке. Оболочки семейств csh и zsh не используют одни и те же файлы запуска (т.е. нет~/.profile
). В частности,zsh
использует$ZDOTDIR/.zshenv
и$ZDOTDIR/.zprofile
(где по$ZDOTDIR
умолчанию$HOME
).Наиболее частые причины:
1. Неправильно настроенный GOROOT
OR
2. GOPATH не установлен.
источник
У меня была такая же проблема после обновления go1.2 до go1.4.
Я переименовал src в _src в моем GOPATH, затем сделал
go get -v
Это сработало, я удалил _src.
Надеюсь, это поможет.
источник
Я столкнулся с этой проблемой при установке другого пакета, и это могло быть вызвано конфигурацией GOROOT и GOPATH в вашем PATH. Я стараюсь не устанавливать GOROOT, потому что моя установка OS X справилась (я полагаю) за меня.
Убедитесь, что в вашем .profile (или там, где вы храните конфигурацию профиля: .bash_profile, .zshrc, .bashrc и т. Д.) Следующее:
export GOPATH=$HOME/go export PATH=$PATH:$GOROOT/bin
Кроме того, вы, вероятно
unset GOROOT
, тоже захотите , если этот путь также неверен.Кроме того, не забудьте очистить свой PATH, аналогично тому, что я сделал ниже, непосредственно перед назначением GOPATH, то есть:
export PATH=$HOME/bin:/usr/local/bin:$PATH export GOPATH=$HOME/go export PATH=$PATH:$GOROOT/bin
Затем,
source <.profile>
чтобы активироватьgo get
источник