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

Это руководство показывает, что такое язык программирования Go, как установить язык Go в Linux и, наконец, как создать тестовую программу на Golang на простом примере.

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

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

Язык Go стал публичным проектом с открытым исходным кодом 10 ноября 2009 года.

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

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

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

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

Мы рассмотрим оба варианта.

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

Язык Go доступен в репозиториях по умолчанию большинства современных дистрибутивов 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 version go1.18.1 linux/amd64

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

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

$ vi hello.go

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

package mainimport «fmt»func main() { fmt.Printf(«hello, worldn»)}

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

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

$ go run hello.go

Вывод:

hello, world

2. Установка 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

Затем проверьте целостность загруженного файла, как показано ниже.

$ sha256sum go1.19.5.linux-amd64.tar.gz

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

36519702ae2fd573c9869461990ae550c8c0d955cd28d2827a6b159fda81ff95 go1.19.5.linux-amd64.tar.gz

Обратите внимание, что отображаемое выше значение контрольной суммы SHA256 должно совпадать со значением, предоставленным по ссылке на скачивание.

Если оно не совпадает, скачайте новый tarball и продолжите.

Распакуйте скачанный tarball с помощью команды:

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

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

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

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

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

$ vi ~/.profile

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

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

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

Введите :wq, чтобы сохранить и закрыть файл.

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

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

Рабочая область представляет собой иерархию каталогов с тремя каталогами в корне:

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

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

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

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

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

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

$ sudo vi ~/.profile

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

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

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

Например, если вы установили go lang в каталог HOME, то вам нужно добавить следующие строки в файл профиля пользователя.

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

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

Вам необходимо обновить правильное значение пути в GOROOT.

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

$ source ~/.profile

Если вы выполнили общесистемную установку, запустите эту команду вместо этого:

$ source /etc/profile

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

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

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

Например, если вы установили go lang в каталог HOME, то вам нужно добавить следующие строки в файл профиля пользователя.

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

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

Вам необходимо обновить правильное значение пути в GOROOT.

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

$ source ~/.profile

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

$ source /etc/profile

2.3. Проверка версии 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»

2.4. Создание простой программы ‘hello world’ с помощью Go

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

Давайте продолжим и создадим простую программу ‘hello world’.

Создайте отдельный каталог для хранения исходного кода вашей программы.

Следующая команда создает каталог для хранения исходного кода программы ‘hello world’.

$ mkdir $HOME/go_projects/src$ mkdir $HOME/go_projects/src/hello

Создайте файл hello.go в каталоге hello:

$ vi $HOME/go_projects/src/hello/hello.go

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

package mainimport «fmt»func main() { fmt.Println(«Hello, World»)}

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

Затем выполните следующую команду для компиляции программы ‘hello world’:

$ go install $GOPATH/src/hello/hello.go

Наконец, запустите программу ‘hello world’ с помощью команды:

$ $GOBIN/hello

Вывод:

Hello, World

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

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

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

Например, выполните следующую команду для удаления языка программирования Go на системах на базе Debian

$ sudo apt remove golang

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

Заключение

На этом пока все.

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

Друзья помогите этому контенту стать доступнее в социальных сетях.

Не проходи мимо жмакни по кнопке возможно кому то еще он будет полезен!