Инструменты Go
Модератор: Olej
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
Re: Инструменты Go
Книги по Go, и их русскоязычные переводы ... получилось там, что они названы и показаны в другой теме, в другом месте: Go.
Там по практически всем книгам показаны варёзные URL , так что всё можете свободно скачать.
Там по практически всем книгам показаны варёзные URL , так что всё можете свободно скачать.
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
Re: Инструменты Go
Теперь самое время посмотреть что там происходит с составом и установкой Go в свежих дистрибутивах Linux....
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
Re: Инструменты Go
Fedora 25Olej писал(а):Теперь самое время посмотреть что там происходит с составом и установкой Go в свежих дистрибутивах Linux....
Код: Выделить всё
[olej@xenix etc]$ cat /etc/system-release.
Fedora release 25 (Twenty Five)
Код: Выделить всё
[olej@xenix ~]$ which gccgo
/usr/bin/which: no gccgo in (/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/home/olej/.local/bin:/home/olej/bin)
Код: Выделить всё
[olej@xenix ~]$ dnf info gcc-go
Последняя проверка окончания срока действия метаданных: 6 days, 21:50:01 назад, Fri May 5 19:28:58 2017.
Доступные пакеты
Имя : gcc-go
Архитектура : x86_64
Эпоха : 0
Версия : 6.3.1
Релиз : 1.fc25
Размер : 9.6 M
Репозиторий : updates
Краткое опи : Go support
URL : http://gcc.gnu.org
Лицензия : GPLv3+ and GPLv3+ with exceptions and GPLv2+ with exceptions and LGPLv2+ and BSD
Описание : The gcc-go package provides support for compiling Go programs
: with the GNU Compiler Collection.
Код: Выделить всё
[olej@xenix etc]$ sudo dnf install gccgo
Последняя проверка окончания срока действия метаданных: 2:26:03 назад, Fri May 12 15:15:19 2017.
Пакета с названием gccgo не найдено.
Ошибка: Совпадений не найдено.
[olej@xenix etc]$ sudo dnf install gcc-go
Последняя проверка окончания срока действия метаданных: 2:26:21 назад, Fri May 12 15:15:19 2017.
Зависимости разрешены.
============================================================================================================================================================
Package Архитектура Версия Репозиторий Размер
============================================================================================================================================================
Установка:
gcc-go x86_64 6.3.1-1.fc25 updates 9.6 M
libgo x86_64 6.3.1-1.fc25 updates 8.1 M
libgo-devel x86_64 6.3.1-1.fc25 updates 498 k
Результат операции
============================================================================================================================================================
Установка 3 Пакеты
Объем загрузки: 18 M
Объем изменений: 68 M
Продолжить? [д/Н]: y
Загрузка пакетов:
(1/3): libgo-devel-6.3.1-1.fc25.x86_64.rpm 78 kB/s | 498 kB 00:06
(2/3): libgo-6.3.1-1.fc25.x86_64.rpm 281 kB/s | 8.1 MB 00:29
(3/3): gcc-go-6.3.1-1.fc25.x86_64.rpm 309 kB/s | 9.6 MB 00:32
------------------------------------------------------------------------------------------------------------------------------------------------------------
Общий размер 560 kB/s | 18 MB 00:33
Проверка транзакции
Проверка транзакции успешно завершена.
Идет проверка транзакции
Тест транзакции проведен успешно
Выполнение транзакции
Установка : libgo-6.3.1-1.fc25.x86_64 1/3
Установка : libgo-devel-6.3.1-1.fc25.x86_64 2/3
Установка : gcc-go-6.3.1-1.fc25.x86_64 3/3
Проверка : gcc-go-6.3.1-1.fc25.x86_64 1/3
Проверка : libgo-6.3.1-1.fc25.x86_64 2/3
Проверка : libgo-devel-6.3.1-1.fc25.x86_64 3/3
Установлено:
gcc-go.x86_64 6.3.1-1.fc25 libgo.x86_64 6.3.1-1.fc25 libgo-devel.x86_64 6.3.1-1.fc25
Выполнено!
Код: Выделить всё
[olej@xenix HISTORY]$ gccgo --version
gccgo (GCC) 6.3.1 20161221 (Red Hat 6.3.1-1)
Copyright (C) 2016 Free Software Foundation, Inc.
Это свободно распространяемое программное обеспечение. Условия копирования
приведены в исходных текстах. Без гарантии каких-либо качеств, включая
коммерческую ценность и применимость для каких-либо целей.
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
Re: Инструменты Go
Olej писал(а): Fedora 25
Код: Выделить всё
[olej@xenix ~]$ dnf list golang*
Доступные пакеты
golang.x86_64 1.7.5-2.fc25 updates
golang-bin.x86_64 1.7.5-2.fc25 updates
...
[olej@xenix ~]$ dnf list golang* | wc -l
1089
Код: Выделить всё
[olej@xenix ~]$ sudo dnf install golang
Последняя проверка окончания срока действия метаданных: 2:31:13 назад, Fri May 12 15:15:19 2017.
Зависимости разрешены.
============================================================================================================================================================
Package Архитектура Версия Репозиторий Размер
============================================================================================================================================================
Установка:
go-srpm-macros noarch 2-7.fc25 fedora 8.6 k
golang x86_64 1.7.5-2.fc25 updates 1.2 M
golang-bin x86_64 1.7.5-2.fc25 updates 43 M
golang-src noarch 1.7.5-2.fc25 updates 4.4 M
Результат операции
============================================================================================================================================================
Установка 4 Пакеты
Объем загрузки: 49 M
Объем изменений: 193 M
Продолжить? [д/Н]: y
Загрузка пакетов:
(1/4): golang-1.7.5-2.fc25.x86_64.rpm 281 kB/s | 1.2 MB 00:04
(2/4): go-srpm-macros-2-7.fc25.noarch.rpm 7.2 kB/s | 8.6 kB 00:01
(3/4): golang-src-1.7.5-2.fc25.noarch.rpm 334 kB/s | 4.4 MB 00:13
(4/4): golang-bin-1.7.5-2.fc25.x86_64.rpm 674 kB/s | 43 MB 01:05
------------------------------------------------------------------------------------------------------------------------------------------------------------
Общий размер 734 kB/s | 49 MB 01:07
Проверка транзакции
Проверка транзакции успешно завершена.
Идет проверка транзакции
Тест транзакции проведен успешно
Выполнение транзакции
Установка : go-srpm-macros-2-7.fc25.noarch 1/4
Установка : golang-src-1.7.5-2.fc25.noarch 2/4
Установка : golang-bin-1.7.5-2.fc25.x86_64 3/4
Установка : golang-1.7.5-2.fc25.x86_64 4/4
Проверка : golang-1.7.5-2.fc25.x86_64 1/4
Проверка : golang-bin-1.7.5-2.fc25.x86_64 2/4
Проверка : golang-src-1.7.5-2.fc25.noarch 3/4
Проверка : go-srpm-macros-2-7.fc25.noarch 4/4
Установлено:
go-srpm-macros.noarch 2-7.fc25 golang.x86_64 1.7.5-2.fc25 golang-bin.x86_64 1.7.5-2.fc25 golang-src.noarch 1.7.5-2.fc25
Выполнено!
Код: Выделить всё
[olej@xenix etc]$ /usr/lib/golang/bin/go version
go version go1.7.5 linux/amd64
Код: Выделить всё
[olej@xenix HISTORY]$ ls /usr/bin/gcc*
/usr/bin/gcc /usr/bin/gcc-ar /usr/bin/gccgo /usr/bin/gcc-nm /usr/bin/gcc-ranlib
Код: Выделить всё
[olej@xenix ~]$ go version
go version go1.6.1 gccgo (GCC) 6.3.1 20161221 (Red Hat 6.3.1-1) linux/amd64
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
Re: Инструменты Go
Olej писал(а): Это то, о чём писалось тут!
Код: Выделить всё
[olej@xenix ~]$ alternatives --display go
go - статус "авто".
ссылка сейчас указывает на /usr/bin/go.gcc
/usr/bin/go.gcc - priority 92
slave gofmt: /usr/bin/gofmt.gcc
/usr/lib/golang/bin/go - priority 90
slave gofmt: /usr/lib/golang/bin/gofmt
Текущая `лучшая' версия - /usr/bin/go.gcc.
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
Re: Инструменты Go
Olej писал(а): Но теперь я уже (понимая что и как происходит) воспользуюсь GUI конфигуратором альтернатив galternatives, о котором рассказано здесь: alternatives (но его нужно обязательно перезапустить после установок Go).
Код: Выделить всё
Меняю...
(обращаем внимание по картинке, что Status: сменяем auto на manual):
[olej@xenix ~]$ alternatives --display go
go - статус "вручную"
ссылка сейчас указывает на /usr/lib/golang/bin/go
/usr/bin/go.gcc - priority 92
slave gofmt: /usr/bin/gofmt.gcc
/usr/lib/golang/bin/go - priority 90
slave gofmt: /usr/lib/golang/bin/gofmt
Текущая `лучшая' версия - /usr/bin/go.gcc.
Код: Выделить всё
[olej@xenix ~]$ go version
go version go1.7.5 linux/amd64
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
Re: Инструменты Go
А теперь то же самое ... "но с крыльями"(с) - Mint 18.1Olej писал(а):Fedora 25Olej писал(а):Теперь самое время посмотреть что там происходит с составом и установкой Go в свежих дистрибутивах Linux....
Код: Выделить всё
olej@nvidia ~ $ lsb_release -a
No LSB modules are available.
Distributor ID: LinuxMint
Description: Linux Mint 18.1 Serena
Release: 18.1
Codename: serena
Olej писал(а): GCC Go ...
Код: Выделить всё
olej@nvidia ~/2017_WORK $ apt list gccgo
Вывод списка… Готово
gccgo/xenial 4:6-20160210-1ubuntu1 amd64
olej@nvidia ~/2017_WORK $ apt install gccgo
[sudo] пароль для olej:
Чтение списков пакетов… Готово
Построение дерева зависимостей
Чтение информации о состоянии… Готово
Будут установлены следующие дополнительные пакеты:
gccgo-6 libgo9
Предлагаемые пакеты:
gccgo-multilib gccgo-6-doc libgo9-dbg
НОВЫЕ пакеты, которые будут установлены:
gccgo gccgo-6 libgo9
обновлено 0, установлено 3 новых пакетов, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено.
Необходимо скачать 69,6 MБ архивов.
После данной операции, объём занятого дискового пространства возрастёт на 336 MB.
Хотите продолжить? [Д/н] y
Пол:1 http://archive.ubuntu.com/ubuntu xenial/main amd64 libgo9 amd64 6.0.1-0ubuntu1 [7 856 kB]
Пол:2 http://archive.ubuntu.com/ubuntu xenial/main amd64 gccgo-6 amd64 6.0.1-0ubuntu1 [61,7 MB]
Пол:3 http://archive.ubuntu.com/ubuntu xenial/main amd64 gccgo amd64 4:6-20160210-1ubuntu1 [1 068 B]
Получено 69,6 MБ за 2мин 18с (504 kБ/c)
Выбор ранее не выбранного пакета libgo9:amd64.
(Чтение базы данных … на данный момент установлено 268534 файла и каталога.)
Подготовка к распаковке …/libgo9_6.0.1-0ubuntu1_amd64.deb …
Распаковывается libgo9:amd64 (6.0.1-0ubuntu1) …
Выбор ранее не выбранного пакета gccgo-6.
Подготовка к распаковке …/gccgo-6_6.0.1-0ubuntu1_amd64.deb …
Распаковывается gccgo-6 (6.0.1-0ubuntu1) …
Выбор ранее не выбранного пакета gccgo.
Подготовка к распаковке …/gccgo_4%3a6-20160210-1ubuntu1_amd64.deb …
Распаковывается gccgo (4:6-20160210-1ubuntu1) …
Обрабатываются триггеры для libc-bin (2.23-0ubuntu7) …
/sbin/ldconfig.real: /usr/lib/nvidia-375/libEGL.so.1 is not a symbolic link
/sbin/ldconfig.real: /usr/lib32/nvidia-375/libEGL.so.1 is not a symbolic link
Обрабатываются триггеры для man-db (2.7.5-1) …
Настраивается пакет libgo9:amd64 (6.0.1-0ubuntu1) …
Настраивается пакет gccgo-6 (6.0.1-0ubuntu1) …
Настраивается пакет gccgo (4:6-20160210-1ubuntu1) …
Обрабатываются триггеры для libc-bin (2.23-0ubuntu7) …
/sbin/ldconfig.real: /usr/lib/nvidia-375/libEGL.so.1 is not a symbolic link
/sbin/ldconfig.real: /usr/lib32/nvidia-375/libEGL.so.1 is not a symbolic link
Код: Выделить всё
olej@nvidia ~ $ which gccgo
/usr/bin/gccgo
olej@nvidia ~ $ gccgo --version
gccgo (Ubuntu 6.0.1-0ubuntu1) 6.0.0 20160414 (experimental) [trunk revision 234994]
Copyright (C) 2016 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
Re: Инструменты Go
Golang :
Смотрим, что установилось оно в совсем другие места (чем Fedora):
Код: Выделить всё
olej@nvidia ~/2017_WORK $ apt list golang
Вывод списка… Готово
golang/xenial,xenial 2:1.6-1ubuntu4 all
olej@nvidia ~/2017_WORK $ apt install golang
Чтение списков пакетов… Готово
Построение дерева зависимостей
Чтение информации о состоянии… Готово
Будут установлены следующие дополнительные пакеты:
golang-1.6 golang-1.6-doc golang-1.6-go golang-1.6-src golang-doc golang-go golang-src
Предлагаемые пакеты:
bzr git mercurial subversion
Рекомендуемые пакеты:
golang-1.6-race-detector-runtime golang-race-detector-runtime
НОВЫЕ пакеты, которые будут установлены:
golang golang-1.6 golang-1.6-doc golang-1.6-go golang-1.6-src golang-doc golang-go golang-src
обновлено 0, установлено 8 новых пакетов, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено.
Необходимо скачать 29,2 MБ архивов.
После данной операции, объём занятого дискового пространства возрастёт на 198 MB.
Хотите продолжить? [Д/н] y
Пол:1 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 golang-1.6-src amd64 1.6.2-0ubuntu5~16.04.2 [6 493 kB]
Пол:2 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 golang-1.6-go amd64 1.6.2-0ubuntu5~16.04.2 [20,3 MB]
Пол:3 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 golang-1.6-doc all 1.6.2-0ubuntu5~16.04.2 [2 370 kB]
Пол:4 http://archive.ubuntu.com/ubuntu xenial-updates/main amd64 golang-1.6 all 1.6.2-0ubuntu5~16.04.2 [16,8 kB]
Пол:5 http://archive.ubuntu.com/ubuntu xenial/main amd64 golang-src amd64 2:1.6-1ubuntu4 [3 066 B]
Пол:6 http://archive.ubuntu.com/ubuntu xenial/main amd64 golang-go amd64 2:1.6-1ubuntu4 [21,8 kB]
Пол:7 http://archive.ubuntu.com/ubuntu xenial/main amd64 golang-doc all 2:1.6-1ubuntu4 [2 808 B]
Пол:8 http://archive.ubuntu.com/ubuntu xenial/main amd64 golang all 2:1.6-1ubuntu4 [2 766 B]
Получено 29,2 MБ за 58с (501 kБ/c)
Выбор ранее не выбранного пакета golang-1.6-src.
(Чтение базы данных … на данный момент установлено 268892 файла и каталога.)
Подготовка к распаковке …/golang-1.6-src_1.6.2-0ubuntu5~16.04.2_amd64.deb …
Распаковывается golang-1.6-src (1.6.2-0ubuntu5~16.04.2) …
Выбор ранее не выбранного пакета golang-1.6-go.
Подготовка к распаковке …/golang-1.6-go_1.6.2-0ubuntu5~16.04.2_amd64.deb …
Распаковывается golang-1.6-go (1.6.2-0ubuntu5~16.04.2) …
Выбор ранее не выбранного пакета golang-1.6-doc.
Подготовка к распаковке …/golang-1.6-doc_1.6.2-0ubuntu5~16.04.2_all.deb …
Распаковывается golang-1.6-doc (1.6.2-0ubuntu5~16.04.2) …
Выбор ранее не выбранного пакета golang-1.6.
Подготовка к распаковке …/golang-1.6_1.6.2-0ubuntu5~16.04.2_all.deb …
Распаковывается golang-1.6 (1.6.2-0ubuntu5~16.04.2) …
Выбор ранее не выбранного пакета golang-src.
Подготовка к распаковке …/golang-src_2%3a1.6-1ubuntu4_amd64.deb …
Распаковывается golang-src (2:1.6-1ubuntu4) …
Выбор ранее не выбранного пакета golang-go.
Подготовка к распаковке …/golang-go_2%3a1.6-1ubuntu4_amd64.deb …
Распаковывается golang-go (2:1.6-1ubuntu4) …
Выбор ранее не выбранного пакета golang-doc.
Подготовка к распаковке …/golang-doc_2%3a1.6-1ubuntu4_all.deb …
Распаковывается golang-doc (2:1.6-1ubuntu4) …
Выбор ранее не выбранного пакета golang.
Подготовка к распаковке …/golang_2%3a1.6-1ubuntu4_all.deb …
Распаковывается golang (2:1.6-1ubuntu4) …
Обрабатываются триггеры для man-db (2.7.5-1) …
Настраивается пакет golang-1.6-src (1.6.2-0ubuntu5~16.04.2) …
Настраивается пакет golang-1.6-go (1.6.2-0ubuntu5~16.04.2) …
Настраивается пакет golang-1.6-doc (1.6.2-0ubuntu5~16.04.2) …
Настраивается пакет golang-1.6 (1.6.2-0ubuntu5~16.04.2) …
Настраивается пакет golang-src (2:1.6-1ubuntu4) …
Настраивается пакет golang-go (2:1.6-1ubuntu4) …
Настраивается пакет golang-doc (2:1.6-1ubuntu4) …
Настраивается пакет golang (2:1.6-1ubuntu4) …
Код: Выделить всё
olej@nvidia ~/2017_WORK $ /usr/bin/gccgo --version
gccgo (Ubuntu 6.0.1-0ubuntu1) 6.0.0 20160414 (experimental) [trunk revision 234994]
Copyright (C) 2016 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
olej@nvidia ~/2017_WORK $ /usr/bin/go version
go version go1.6.2 linux/amd64
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
Re: Инструменты Go
Olej писал(а):Смотрим, что установилось оно в совсем другие места (чем Fedora):
Код: Выделить всё
olej@nvidia /etc/alternatives $ update-alternatives --list c89
/usr/bin/c89-gcc
olej@nvidia /etc/alternatives $ update-alternatives --list c99
/usr/bin/c99-gcc
Код: Выделить всё
olej@nvidia /etc/alternatives $ update-alternatives --list go
update-alternatives: ошибка: нет альтернатив для go
- perseus
- Писатель
- Сообщения: 99
- Зарегистрирован: 11 май 2017, 18:01
- Откуда: Щёлково, Московская обл.
- Контактная информация:
Re: Инструменты Go
внимательно изучил ваши манипуляции,
и попробовал у себя сделать тоже самое, вот что получилось:
установились оба компилятора и gccgo и golang
и galternatives их показывает обоих (только переключать гад не позволяет почемуто между ними, не работает функция manual)
и попробовал у себя сделать тоже самое, вот что получилось:
установились оба компилятора и gccgo и golang
Код: Выделить всё
maksim@ASUS ~/Progy/Go/src/imitator $ go version
go version go1.2.1 linux/386
maksim@ASUS ~/Progy/Go/src/imitator $ update-alternatives --list go
/usr/bin/gccgo-go
/usr/bin/golang-go
maksim@ASUS ~/Progy/Go/src/imitator $
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 6 гостей