howto-db/data/pages/go/go_installation.txt
2024-02-10 12:53:55 +00:00

78 lines
3.9 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

====== Установка Go ======
Как известно, [[yggdrasil:Yggdrasil|Yggdrasil]] и [[Yggdrasil:email:Yggmail|Yggmail]] написаны на [[go:go|Go]]. Разработчики этих программ обычно используют возможности последней версии Go при написании кода, и такой код зачастую не компилируется на более ранних версиях Go. В связи с этим у некоторых пользователей могут возникнуть сложности с самостоятельной сборкой Yggdrasil, Yggmail и других программ, т.к., в репозиториях популярных дистрибутивов Linux обычно содержатся устаревшие версии Go.
Ниже кратко описано, как можно установить Go последней версии в Linux (установка под Windows, думаю, сложностей вызвать не должна).
Используем дистрибутив на базе Debian, в других дистрибутивах всё делается аналогично.
Во первых, стоит проверить, не установлена ли в системе уже какая-либо версия Go:
<code>go version</code>
Если установленная версия Go является устаревшей, удаляем её:
<code>sudo apt remove golang</code>
Если остались каталоги /usr/lib/go-1(x).* или /usr/lib/go, или /usr/local/go - их можно удалить. Например:
<code>sudo rm-rf /usr/lib/go-1.13</code>
Смотрим, какая версия Go присутствует в репозитории дистрибутива:
<code>sudo apt update
apt-cache search golang</code>
или
<code>sudo apt update
apt-cache pkgnames golang</code>
Информация о пакете:
<code>apt-cache show golang-go</code>
Если версия в репозитории дистрибутива устраивает, устанавливаем её:
<code>sudo apt install golang-go</code>
Если не устраивает, идем по адресу: https://golang.org/dl/, выбираем и скачиваем архив под свой дистрибутив. Например, для Raspbian 9.13 (RaspberryPi 3):
<code>wget https://golang.org/dl/go1.17.1.linux-armv6l.tar.gz</code>
Распаковываем каталог go и перемещаем его в ''/usr/local/'':
<code>tar -xzf go1.17.1.linux-armv6l.tar.gz
sudo mv go /usr/local/</code>
Скачанный архив можно удалить:
<code>rm go1.17.1.linux-armv6l.tar.gz</code>
Далее, необходимо создать рабочий каталог go, в который вы будете собирать программы:
<code>mkdir ~/go</code>
И последнее: прописываем в профиль переменные среды окружения.
Открываем файл ''~/.bashrc'' или ''~/.profile'' и в конец файла дописываем:
<code>export PATH=$PATH:/usr/local/go/bin
export GOPATH=~/go</code>
(если в файле уже были подобные строки, связанные с go, их можно удалить)
Далее, нужно перелогиниться в систему, чтобы отработали команды в .bashrc, либо выполнить:
<code>source .bashrc</code>
Проверяем:
<code>go version</code>
Должны увидеть установленную версию go.
<code>go env</code>
Должны увидеть все переменные среды окружения, связанные с go.
Всё, можно собирать пакеты из исходников самостоятельно.