Back-End

12 ago, 2014

Gerenciando versões de Go com GVM

Publicidade

O Go pode ser instalado na máquina (independente do SO) de uma forma extremamente simples. Por esse motivo meu artigo será sobre o GVM. Ele é um gerenciador de versões para GO, como o rbenv e rvm (RUBY) virtualenv (PYTHON). Ele permite ter várias versões de go instalado na sua máquina.

A primeira coisa é instalar algumas dependências para que tudo funcione como esperado, apt-get install curl git mercurial make binutils bison gcc. Depois execute bash < <(curl -s -L https://raw.githubusercontent.com/moovweb/gvm/master/binscripts/gvm-installer)

Agora que instalamos o gvm, vamos atualizar a sessão do terminal executando source ~/.gvm/scripts/gvm.

O comando gvm já está disponível. Vou citar alguns comandos básicos:

  • gvm version – ver a versão do gvm;
  • gvm list – ver as versões de GO instalado;
  • gvm listall – ver as versões disponíveis para instalação;
  • gvm install xpto – instalar uma versão(xpto);
  • gvm uninstall xpto- remover a versão(xpto);
  • gvm use xpto —default – seleciona versão para utilizar , —default define a versão padrão para o SO.

Execute o gvm install release para instalar a versão atual de GO. Precisamos só definir a versão que vamos utilizar usando o comando gvm use release —default.

Com o Go instalado e funcionando, vamos configurar o ambiente. Crie um diretório para o projeto e dentro crie três pastas para a estrutura padrão de GO. Esse comando criará a pasta com os subdiretórios mkdir -p go/{bin,pkg,src}.

Último passo é configurar as variáveis de ambiente.

echo “export GOPATH=$HOME/go” >> ~/.bashrc

echo “export PATH=$PATH:$GOPATH/bin” >> ~/.bashrc

*Deixei a palavra go em negrito para destacar o nome da pasta criada anteriormente.

Mão na massa

Minha intenção nesse artigo é falar apenas da instalação e configuração, mas acho necessário ter um Hello World para que possa rodar um script e ver que tudo está OK.

Dentro da pasta src crie um arquivo com o nome hello.go e cole o seguinte código

package main
import "fmt"
func main(){ 
    fmt.Println("Hello World")
}

Pronto agora é só executar o arquivo go run hello.go.