Instalación de Go en Linux (golang)

Author
Por Darío Rivera
Publicado el en Go

El lenguaje de programación Go es un lenguaje compilado, de tipado estático, que utiliza un mecanismo de concurrencia capaz de aprovechar al máximo arquitecturas multinúcleo y en red, permitiendo también construir programas flexibles y modulares. Go fue creado en 2009 por Robert Griesemer, Rob Pike y Ken Thompson, este último, también creador del lenguage B (antecesor de C). Alguna aplicaciones muy conocidas han sido creadas en Go como por ejemplo Docker, Kubernetes y Ethereum.

Instalación

En distribuciones basadas en Debian podrás instalarlo directamente de los repos con el siguiente comando:

sudo apt-get install golang

Este comando instalará el compilador y creará una carpeta llamada go en ~($HOME). Para verificar que todo ha quedado correctamente instalado deberás crear un programa sencillo, compilarlo y ejecutarlo.

cd ~/go/src
mkdir helloworldapp && cd helloworldapp

Estando en este directorio deberás crear un archivo con vim, nano y otro editor con el siguiente contenido:

package main

import "fmt"

func main() {
	fmt.Printf("hello, world\n")
}

Y finalmente compilarlo y ejecutarlo.

go build
./helloworldapp

La salida de este programa será la siguiente

hello, world

Configuración

Como te habrás dado cuenta el directorio ~/go/src es el directorio por defecto en donde se deberán crear los archivos de programa del lenguaje (workspace). Para cambiar este directorio deberás configurar la variable de entorno GOPATH agregando la siguiente línea de código en el archivo de inicio de la shell que utilices.

export GOPATH=$HOME/go

Bash

Debes editar el archivo ~/.bash_profile y ejecutar enseguida el siguiente comando.

source ~/.bash_profile

Zsh

Debes editar el archivo ~/.zshrc y ejecutar enseguida el siguiente comando.

source ~/.zshrc

Hasta pronto!


Acerca de Darío Rivera

Author

Application Architect at Elentra Corp . Quality developer and passionate learner with 10+ years of experience in web technologies. Creator of EasyHttp , an standard way to consume HTTP Clients.

LinkedIn Twitter Instagram

Sólo aquellos que han alcanzado el éxito saben que siempre estuvo a un paso del momento en que pensaron renunciar.