Pull to refresh

Установка Go на Linux

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

Есть конечно онлайн компилятор, но все таки во времена отсутствия подключения он нам не подойдет. Итак, на Ubuntu (и как говориться в документации на Debian) установку можно произвести из стандартных репозиториев, гду нужный нам пакет имеет название golang. Но насторожило следующие предложение «But there are still some minor issues being worked out. For now we will stick to the installation from source».

Итак, начнем:
  1. Первым делом следует установить Python:
    apt-get install python-setuptools python-dev build-essential
    После чего уже можно устанавливать, тот самый Mercurial, о котором идеться в документации (для получения команды hg):
    sudo easy_install mercurial
  2. Go написан на С, поэтому нам понадобятся инструментальные средства C следующие пакеты:
    • bison — анализатор генератора
    • gcc — набор компиляторов
    • libc6-dev — стандартные библиотеки С
    • ed — текстовый редактор
    • gawk — интерпретатор
    • make — утилита для компиляции
    Устанавливаем:
    sudo apt-get install bison ed gawk gcc libc6-dev make
  3. Далее устанавливаем переменой GOROOT каталог где будет хранится корневая папка Go. В моем случае это выглядело так:
    export GOROOT=/home/bytex/go
  4. Качаем исходники в нашу папку:
    hg clone -r release https://go.googlecode.com/hg/ $GOROOT
  5. Ну и собственно компилируем и устанавливаем Go:
    cd $GOROOT/src
    ./all.bash

  6. В общем, все. После установки вывелось сообщение
    ALL TESTS PASSED

    ---
    Installed Go for linux/386 in /home/bytex/go
    Installed commands in /home/bytex/go/bin

    Надеюсь все нормально:)

Теперь конечно время для написания первой программы Hello, world!.
И собственно спасибо Miek'у Gieben'у и його книге.
Tags:
Hubs:
You can’t comment this publication because its author is not yet a full member of the community. You will be able to contact the author only after he or she has been invited by someone in the community. Until then, author’s username will be hidden by an alias.