Estoy intentando instalar un web.go
, pero la ejecución go get github.com/hoisie/web
devuelve
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"
y esto continúa por un tiempo con varios paquetes, antes de devolver nada más. go env
me da:
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"
¿Cómo puedo instalar web.go
? Usar go get
(en lugar de go install
) es lo que está en el README en la página de github. Mi versión Go es go version go1.2 linux/amd64
.
Respuestas:
Los problemas están relacionados con un inválido
GOROOT
.Creo que instalaste Go in
/usr/local/go
.Así que cambia tu
GOROOT
ruta al valor de/usr/local/go/bin
.Parece que pretendías tener tu espacio de trabajo (GOPATH) ubicado en
/home/me/go
.Esto podría solucionar su problema.
Agregue esto al final de su perfil de bash, ubicado aquí =>
$HOME/.profile
Asegúrese de eliminar las referencias antiguas de
GOROOT
.Luego intente instalar web.go nuevamente.
Si eso no funciona, entonces haga que Ubuntu instale Go por usted.
sudo apt-get install golang
Video tutorial: http://www.youtube.com/watch?v=2PATwIfO5ag
fuente
go get
da el mismo error.GOROOT
está configurado en/usr
, ir instalado en / usr, no en / usr / local. EstablecerGOPATH
en$HOME/go
. ¿Alguna idea de qué más comprobar?GOROOT
parece que el problema se solucionó.echo $GOROOT
luego verifiqué que GO todavía lo tenía en el entorno con elgo env
que lo tenía y estaba/usr/local/go
donde lo tenía instalado (por lo tanto, no es necesario configurarlo en ningún caso)Instalé Go with
brew
en OSX 10.11 y descubrí que tenía que configurarloGOROOT
en:/usr/local/Cellar/go/1.5.1/libexec
(Por supuesto, reemplace la versión en esta ruta con la versión go que tiene)
Brew usa enlaces simbólicos, que engañaban al gotool. Así que sigue los enlaces a casa.
fuente
Tuve exactamente el mismo problema, después de pasar de la versión anterior de Go (instalada desde el PPA anterior) a los paquetes predeterminados más nuevos (1.2.1) en ubuntu 14.04.
El primer paso fue purgar el go existente:
Que emite las siguientes advertencias:
Parece que la eliminación de go deja algunos archivos atrás, lo que a su vez puede confundir la instalación más reciente. Más precisamente, la instalación en sí se completará bien, pero luego cualquier comando go, como "ir a buscar algo" da esos errores de "ruta de importación no reconocida".
Todo lo que tenía que hacer era eliminar esos directorios primero, reinstalar golang y todo funciona como un encanto (suponiendo que también establezca GOPATH)
fuente
/usr/local/go/
¡Porque GFW te prohibió acceder a golang.org! Y cuando uso el proxy, puede funcionar bien.
puedes mirar la información usando el comando
go get -v -u golang.org/x/oauth2
fuente
http://ping.eu/nslookup/
para encontrar la IP correcta del dominio, configúrelo en el archivo de hosts y luego use un proxy para descargar.export http_proxy=127.0.0.1:1080 https_proxy=127.0.0.1:1080
A veces solo quieres decirle la palabra F al gobernador$ unset GOROOT
trabajó para mi. Como la mayoría de las respuestas sugieren, su GOROOT no es válido.fuente
Tuve el mismo problema en MacOS 10.10. Y descubrí que el problema causado por OhMyZsh shell. Luego cambié de nuevo a bash, todo salió bien.
Aquí está mi go env
fuente
go env
de cuando no funcionó o cuando funcionó? Probablemente no fue "causado por [otro shell]", sino que probablemente fue una falla al establecer correctamenteGOPATH
en ese otro shell. Las familias de shells csh y zsh no usan los mismos archivos de inicio (es decir, no~/.profile
). Enzsh
usos particulares$ZDOTDIR/.zshenv
y$ZDOTDIR/.zprofile
(donde por$ZDOTDIR
defecto$HOME
).Las causas más comunes son:
1. Un GOROOT
OR configurado incorrectamente
2. GOPATH no está configurado
fuente
Tuve el mismo problema después de haber actualizado go1.2 a go1.4.
Cambié el nombre de src a _src en mi GOPATH y luego hice un
go get -v
Funcionó, luego eliminé _src.
Espero eso ayude.
fuente
Encontré este problema al instalar un paquete diferente, y podría ser causado por la configuración de GOROOT y GOPATH en su PATH. Tiendo a no configurar GOROOT porque mi instalación de OS X lo manejó (creo) por mí.
Asegúrese de lo siguiente en su .profile (o donde sea que almacene la configuración del perfil: .bash_profile, .zshrc, .bashrc, etc.):
Además, es probable que también desee hacerlo
unset GOROOT
, en caso de que esa ruta también sea incorrecta.Además, asegúrese de limpiar su PATH, de manera similar a lo que hice a continuación, justo antes de la asignación de GOPATH, es decir:
Entonces,
source <.profile>
para activargo get
fuente