#1 GoSchool: Instalação

Guilherme Caruso
Gommunity
Published in
6 min readNov 12, 2018

--

Bem vindo ao tutorial de número #1 do GoSchool, uma iniciativa da Gommunity.

Nesse primeiro momento vamos preparar o ambiente para que você possa utilizar GO em sua máquina. O processo de instalação será feito para Windows, Linux e macOS.

Obs: Existem formas e formas de se instalar GO, caso encontre alguma diferente da apresentada neste tutorial, compartilhe com a gente

Para ter acesso ao material oficial de instalação do GO entre AQUI!

Chega de enrolação!

Vamos seguir essa ordem, Ok?

  1. Windows
  2. Linux
  3. macOS

Windows

  1. Para iniciar o processo de instalação no Windows você deve acessar o link: Download GO — Microsoft Windows
  2. Clique no botão para download e aguarde o processo ser finalizado.

3. Por estarmos dentro do Windows, não existem muitos segredos. Basta pressionar o botão “Next” até que o botão “Install” apareça. Com isto, o processo de instalação do Go estará finalizado no Windows.

Vamos realizar um teste simples para ver se a instalação foi feita com sucesso! Explicarei em um próximo post um trecho de código mais elaborado para executarmos e realizarmos o teste de instalação, tudo bem?

4. Agora precisamos definir o folder que apontado durante a instalação. Para isso, rode o seguinte comando:

cd $HOME && mkdir go && cd go && mkdir bin && mkdir src && mkdir pkg && echo 'Gopath Definido'

5. Para testar se o GO realmente foi instalado em sua máquina, abra seu terminal e digite:

go
  • A saída deve ser algo parecido com:
Go is a tool for managing Go source code.Usage:go <command> [arguments]The commands are:bug         start a bug report
build compile packages and dependencies
clean remove object files and cached files
doc show documentation for package or symbol
env print Go environment information
fix update packages to use new APIs
fmt gofmt (reformat) package sources
generate generate Go files by processing source
get download and install packages and dependencies
install compile and install packages and dependencies
list list packages or modules
mod module maintenance
run compile and run Go program
test test packages
tool run specified go tool
version print Go version
vet report likely mistakes in packages
Use "go help <command>" for more information about a command.Additional help topics:buildmode build modes
c calling between Go and C
cache build and test caching
environment environment variables
filetype file types
go.mod the go.mod file
gopath GOPATH environment variable
gopath-get legacy GOPATH go get
goproxy module proxy protocol
importpath import path syntax
modules modules, module versions, and more
module-get module-aware go get
packages package lists and patterns
testflag testing flags
testfunc testing functions
Use "go help <topic>" for more information about that topic.

6.Tudo certo? Então estamos com tudo funcionando perfeitamente.

Linux

  1. Para iniciar o processo de instalação no Linux você deve acessar o link: Download GO — Linux
  2. Clique no botão para download e aguarde o processo ser finalizado.

3. Feito o Download, abra seu terminal e acesse o local no qual o arquivo foi baixado. Execute o comando para que ele seja descompactado:

tar -C /usr/local -xzf go1.11.2.linux-amd64.tar.gz

Obs: é possível que em alguns casos seja necessário a utilização do “sudo” para a execução como root user.

4. Após descompactar o arquivo, é necessário adicionar o caminho da pasta onde o GO foi instalado no PATH raíz de sua máquina. Para isso, vou utilizar o editor VIM.

Atenção! Muito cuidado nessa hora!

  • Primeiro vamos abrir o arquivo de configuração do bash.
vim ~/.bashrc

Caso não utilize bash, a edição pode ser feito no arquivo de configuração zsh ~/.zshrc.

  • Com ele aberto, vá para o final do arquivo e adicione o seguinte código.
export PATH=$PATH:/usr/local/go/bin

Ele irá garantir que comandos e binários GO sejam reconhecidos pelo sistema.

  • Salve o arquivo.

5. Por fim, é necessário adicionar o GOPATH para que toda instalação e leitura de arquivo possa ser feita. Nesse caso, vamos definir o próprio “/urs/local/go” como GOPATH.

  • Abra novamente o arquivo de configuração do bash.
vim ~/.bashrc

Caso não utilize bash, a edição pode ser feito no arquivo de configuração zsh ~/.zshrc.

  • Adicione o seguinte código.
export GOPATH=/urs/local/go
  • Salve o arquivo.

6. Para testar se o GO realmente foi instalado em sua máquina, abra seu terminal e digite:

go

Para que o comando descrito acima funcione perfeitamente, é necessário abrir um novo terminal para que as novas configurações do bash sejam carregadas.

  • A saída deve ser algo parecido com:
Go is a tool for managing Go source code.Usage:go <command> [arguments]The commands are:bug         start a bug report
build compile packages and dependencies
clean remove object files and cached files
doc show documentation for package or symbol
env print Go environment information
fix update packages to use new APIs
fmt gofmt (reformat) package sources
generate generate Go files by processing source
get download and install packages and dependencies
install compile and install packages and dependencies
list list packages or modules
mod module maintenance
run compile and run Go program
test test packages
tool run specified go tool
version print Go version
vet report likely mistakes in packages
Use "go help <command>" for more information about a command.Additional help topics:buildmode build modes
c calling between Go and C
cache build and test caching
environment environment variables
filetype file types
go.mod the go.mod file
gopath GOPATH environment variable
gopath-get legacy GOPATH go get
goproxy module proxy protocol
importpath import path syntax
modules modules, module versions, and more
module-get module-aware go get
packages package lists and patterns
testflag testing flags
testfunc testing functions
Use "go help <topic>" for more information about that topic.

7. Tudo certo? Então estamos com tudo funcionando perfeitamente.

macOS

  1. Vamos instalar a linguagem GO utilizando o gerenciador de pacotes do macOS, o Homebrew. Para isso, utilize:
brew install go --cross-compile-common

2. Com a instalação concluída, precisamos definir algumas variáveis de ambiente nos arquivos de configuração bash ou zsh. Nesse caso vamos utilizar o editor VIM, porem, sinta-se a vontade para utilizar o editor de sua preferência.

vim ~/.bashrc

ou

vim ~/.zshrc
  • Adicione os seguintes exports:
export PATH=$PATH:/usr/local/go/bin
export GOPATH=/urs/local/go

Os exports são responsáveis por fazer com que o macOS reconheça e possa executar os binários GO.

  • Salve o arquivo.

3. Para testar se o GO realmente foi instalado em sua máquina, abra seu terminal e digite:

go

Para que o comando descrito acima funcione perfeitamente, é necessário abrir um novo terminal para que as novas configurações do bash sejam carregadas.

  • A saída deve ser algo parecido com:
Go is a tool for managing Go source code.Usage:go <command> [arguments]The commands are:bug         start a bug report
build compile packages and dependencies
clean remove object files and cached files
doc show documentation for package or symbol
env print Go environment information
fix update packages to use new APIs
fmt gofmt (reformat) package sources
generate generate Go files by processing source
get download and install packages and dependencies
install compile and install packages and dependencies
list list packages or modules
mod module maintenance
run compile and run Go program
test test packages
tool run specified go tool
version print Go version
vet report likely mistakes in packages
Use "go help <command>" for more information about a command.Additional help topics:buildmode build modes
c calling between Go and C
cache build and test caching
environment environment variables
filetype file types
go.mod the go.mod file
gopath GOPATH environment variable
gopath-get legacy GOPATH go get
goproxy module proxy protocol
importpath import path syntax
modules modules, module versions, and more
module-get module-aware go get
packages package lists and patterns
testflag testing flags
testfunc testing functions
Use "go help <topic>" for more information about that topic.

4. Tudo certo? Então estamos com tudo funcionando perfeitamente.

Conclusão

Enfim, tudo funcionando!

Agora podemos iniciar nossos tutoriais com o que realmente importa: CÓDIGO!.

Nos vemos no próximo post!

--

--

Guilherme Caruso
Gommunity

Software Engineer | Gopher | Writer’s Padawan | INTP-T