Как установить язык Go в Linux

Что такое язык Go?

Go, также известный как GoLang, – это язык программирования с открытым исходным кодом, разработанный в Google Робертом Грисемером*, Робом Пайком* и Кеном Томпсоном* в 2007 году.

Язык Go стал публичным проектом с открытым исходным кодом 10 ноября 2009 года. Язык Go активно используется в некоторых производственных серверах Google, а также другими компаниями, такими как Dropbox, CoreOS, CloudFlare, Docker, Soundcloud, Uber и многими другими.

Теперь давайте рассмотрим два способа установки Golang и настройки языка программирования Go в Linux.

Установка языка Go в Linux

Как было сказано выше, мы можем установить Golang либо используя стандартный менеджер пакетов вашего дистрибутива, либо скомпилировать и установить Golang из исходного кода. Мы рассмотрим оба варианта.

Установка Golang с помощью менеджеров пакетов

Язык Golang доступен в репозиториях по умолчанию большинства современных дистрибутивов Linux.

Чтобы установить Golang в Alpine Linux, выполните:

sudo apk add go

В Arch Linux и таких вариантах, как EndeavourOS и Manjaro Linux:

sudo pacman -S go

На системах на базе RPM, таких как Fedora, RHEL и их клонах, таких как CentOS, AlmaLinux и Rocky Linux, выполните:

sudo dnf install golang

На старых системах RHEL используйте yum вместо dnf:

sudo yum install golang

В системах на базе DEB, таких как Debian, Ubuntu, Linux Mint и Pop OS, вы можете установить язык Go с помощью команды:

sudo apt install golang

В SUSE/openSUSE:

sudo zypper install golang

После установки проверьте версию Golang с помощью команды:

go version
go версия go1.18.1 linux/amd64

Тестовая установка

Создайте файл с именем hello.go :

vi hello.go

Добавьте в него следующий код:

package main
import "fmt"
func main() {
  fmt.Printf("hello, world
")
}

Сохраните файл и закройте его.

Теперь запустите код с помощью команды:

go run hello.go 

Пример вывода:

hello, world

Установка Golang из исходных текстов

Go доступен в репозиториях по умолчанию некоторых дистрибутивов Linux. Однако версия языка Go в стандартных репозиториях может быть немного устаревшей. Поэтому всегда рекомендуется использовать последнюю версию, скачав tarball с официального сайта и установив его вручную, как описано ниже.

Следующие шаги были протестированы в версиях Ubuntu 16.04 и Ubuntu 22. 04. Однако эти шаги одинаковы и для других дистрибутивов Linux.

Скачать последнюю версию Golang отсюда.

wget https://go.dev/dl/go1.19.5.linux-amd64.tar.gz

Извлеките скачанный tarball с помощью команды:

sudo tar -C /usr/local -xvzf go1.19.5.linux-amd64.tar.gz

Эта команда извлекает tarball в каталог /usr/local. Здесь флаг -c указывает на целевой каталог.

Настройка языка Go

Теперь нам нужно установить путь к исполняемому файлу языка Go в файле профиля пользователя.

Для этого отредактируйте файл профиля пользователя:

nano ~/.profile

Добавьте следующую строку:

export PATH=$PATH:/usr/local/go/bin

Для установки в масштабах всей системы добавьте вышеуказанную строку в файл /etc/profile.

Следующим шагом установите рабочее пространство для языка Go, где мы будем сохранять сборки языка Go.

Создание каталога рабочей области

Рабочая область – это иерархия каталогов с тремя каталогами в корне:

  • src содержит исходные файлы Go,
  • pkg содержит объекты пакетов,
  • bin содержит исполняемые команды.

Создайте приведенную выше иерархию каталогов для рабочего пространства языка Go с помощью команды:

mkdir -p $HOME/go_projects/{src,pkg,bin}

Здесь $HOME/go_projects – это каталог, в котором Go будет собирать свои файлы.

Далее нам нужно указать Go на новое рабочее пространство.

Для этого отредактируйте файл /.profile:

sudo nano ~/.profile

Добавьте следующие строки, чтобы указать Go на новый каталог рабочего пространства.

export GOPATH="$HOME/go_projects"
export GOBIN="$GOPATH/bin"

Если язык Go установлен не по умолчанию (т.е. /usr/local/), вам необходимо указать путь установки (GOROOT) в файле ~/.profile. Например, если вы установили go lang в каталог HOME, то вам нужно добавить следующие строки в файл профиля пользователя.

export GOROOT=$HOME/go
export PATH=$PATH:$GOROOT/bin

Примечание: если вы установили Golang с помощью менеджеров пакетов, путь установки будет либо /usr/lib/go, либо /usr/lib/golang. Вам необходимо обновить правильное значение пути в GOROOT.

После того, как вы указали соответствующие значения, выполните следующую команду для обновления значений среды Go lang.

source ~/.profile

Если вы выполнили установку в масштабах всей системы, выполните эту команду:

source /etc/profile

Проверка версии Golang

Теперь выполните следующие команды, чтобы проверить, правильно ли вы установили и настроили язык Go.

Для проверки установленной версии:

go version

Пример вывода:

go version go1.19.5 linux/amd64

Для просмотра информации о среде Go lang выполните:

go env

Вывод примера:

GO111MODULE=""
GOARCH="amd64"
GOBIN="/home/ostechnix/go_projects/bin"
GOCACHE="/home/ostechnix/.cache/go-build"
GOENV="/home/ostechnix/.config/go/env"
GOEXE="""
GOEXPERIMENT="""
GOFLAGS="""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOINSECURE="""
GOMODCACHE="/home/ostechnix/go_projects/pkg/mod"
GONOPROXY="""
GONOSUMDB="""
GOOS="linux"
GOPATH="/home/ostechnix/go_projects"
GOPRIVATE="""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/usr/local/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64"
GOVCS=""
GOVERSION="go1.19.5"
GCCGO="gccgo"
GOAMD64="v1"
AR="ar"
CC="gcc"
CXX="g "
CGO_ENABLED="1"
GOMOD="/dev/null"
GOWORK=""
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -Wl,--no-gc-sections -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build350461959=/tmp/go-build -gno-record-gcc-switches"

Если вы видите результат, похожий на приведенный выше, поздравляем! Язык Go готов к использованию. Вы можете начать писать свои программы на go.

Обновление Golang

Если вы установили Go с помощью менеджера пакетов, просто обновите систему. Если в репозиториях доступна последняя версия, Golang будет обновлен автоматически.

Если вы установили Golang из исходников, следуйте инструкциям.

Сначала удалите существующую версию.

Чтобы удалить Golang, удалите каталог /usr/local/go с помощью команды:

sudo rm -rf /usr/local/go

Скачайте и установите новую версию, как указано в разделе выше.

Удаление языка Go

Если вам больше не нужен язык Go, вы можете удалить Golang, просто удалив директорию go, т.е. /usr/local/go.

rm -rf /usr/local/go

Если вы установили Golang с помощью менеджеров пакетов, для удаления Golang можно использовать соответствующую команду uninstall. Например, выполните следующую команду для удаления языка программирования Go в системах на базе Debian:

sudo apt remove golang

Также удалите каталоги рабочего пространства.

Заключение

На этом все. В этом руководстве вы узнали, как установить язык Go в Linux, как настроить и написать простую программу.

Зарубин Иван Эксперт по Linux и Windows

Парашютист со стажем. Много читаю и слушаю подкасты. Люблю посиделки у костра, песни под гитару и приближающиеся дедлайны. Люблю путешествовать.

Вдохновлен ostechnix.com

Комментарии (0)