Установка и использование нескольких версий Golang

В этой статье установим различные версии языка программирования Golang для дальнейшего их использования.

Оглавление статьи

  1. Вводная часть
  2. Скачивание Golang
  3. Переменные среды
  4. Подведем итоги

Вводная часть

На официальном сайте Golang предоставлена наглядная пошаговая инструкция по установке этого замечательного языка программирования. Здесь же поделюсь своим немного видоизмененным вариантом.

Скачивание Golang

Перед скачиванием нужной версии, создадим каталог в котором будут храниться различные версии Golang. Путь до каталога не принципиален, можно выбрать абсолютно любой какой вам удобен и привычен. Я обычно храню все версии Golang и его пакеты в каталоге golang который размещаю в Домашней папке (/home/<user>/golang):

BASH
mkdir ~/golang
cd ~/golang

Далее переходим на страницу официального сайта, с перечнем доступных версий Golang и скачиваем нужный нам архив.

Распаковываем скаченный архив в созданный каталог, у меня это ~/golang и переименовываем его так, чтобы было понятно какая это версия, например go-1.21.4. И того должно получиться ~/golang/go1.21.4.

Предположим, что вышла новая версия Golang 1.21.5. Так же скачиваем архив, с данной версией на официальном сайте и распаковываем ее в созданный каталог ~/golang/go1.21.5. И того должна получиться следующая структура:

BASH
~/golang
├── go-1.21.4
├── go-1.21.5

Аналогичным образом в дальнейшем добавляем другие версии.

Переменные среды

GOROOT

GOROOT - хранит путь до используемой версии Golang.

Сейчас если вести в терминале команду:

BASH
go version

Мы получим ошибку go: команда не найдена. Так как переменные среды не были настроены и терминал не знает где ему искать исполняемый файл go. Чтобы это исправить откроем в привычном вам редакторе файл ~/.profile и добавим в него следующую конструкцию:

.PROFILE
# golang
export GOROOT=~/golang/go1.21.5
export PATH=$PATH:$GOROOT/bin

Далее мы расширяем переменную сред PATH добавив к ее значениям $GOROOT/bin, ссылающуюся на исполняемый файл Golang.

Перезапустим терминал либо введем команду, чтобы изменения вступили в силу:

BASH
source ~/.profile

Теперь если ввести в терминале команду:

BASH
go version

Вместо ошибки увидим текущую версию go version go1.21.5 linux/amd64.

GOPATH

GOPATH - хранит путь до сторонних пакетов.

BASH
go get <package>
go install <package>

Необходимо явно указать каталог куда сторонние пакеты будут скачены. Для этого создадим каталог ~/golang/packages рядом с версиями Golang.

BASH
mkdir ~/golang/packages

Остается добавить, созданный каталог в переменные среды по аналогии как это было сделано с GOROOT и того должно получиться:

.PROFILE
# golang
export GOROOT=~/golang/go1.21.5
export GOPATH=~/golang/packages
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin

Перезапустим терминал либо введем команду, чтобы изменения вступили в силу:

BASH
source ~/.profile

Подведем итоги

В этой статье мы научились устанавливать и использовать различные версии Golang. При использовании IDE GoLand можно с легкостью переключаться между версиями, а так же добавлять новые, скачивая их через раздел настроек GoLand.

Предыдущая статья Создаем самописный framework на нативном JavaScript используя Webpack Следующая статья Автоматическая компиляция Golang проекта при изменении файлов