Ubuntu 配置 Go 语言开发环境(Sublime Text+GoSublime)
博客专区 > 无闻 的博客 > 博客详情
Ubuntu 配置 Go 语言开发环境(Sublime Text+GoSublime)
无闻 发表于5年前
Ubuntu 配置 Go 语言开发环境(Sublime Text+GoSublime)
  • 发表于 5年前
  • 阅读 33743
  • 收藏 56
  • 点赞 18
  • 评论 23
摘要: 本文针对的 Go 语言版本为 1.3,之前也有相关文章讲解如何在 Ubuntu 下配置Go语言的开发环境,但时过境迁,一些方法已经不相同或者不必要。虽讲的是 Ubuntu 下安装配置过程,但 Windows 系统不仅下载更方便,配置环境部分大同小异

最后更新:2014 年 6 月 29 日

本文针对的 Go 语言版本为 1.3,之前也有相关文章讲解如何在 Ubuntu 下配置Go语言的开发环境,但时过境迁,一些方法已经不相同或者不必要。虽讲的是 Ubuntu 下安装配置过程,但 Windows 系统不仅下载更方便,配置环境部分大同小异,其中 64 位系统的 GCC 编译器可到 http://tdm-gcc.tdragon.net/ 下载。

第一步:安装Go语言相关工具
请在终端输入以下指令(如果发现下载速度一般,建议每个分开安装,否则一个安装失败将导致未安装的全部失败):

sudo apt-get install bison ed gawk gcc libc6-dev make

等待全部安装完成以后,就可以进入下一步的操作

第二步:安装 Mercurial(如果你不想安装,可直接跳到第三步的方法二)
Mercurial 是一个版本管理系统,俗称 hg,可以直接在终端输入 "hg" 来检查是否已经安装该软件,由于我们需要从 google code 中 clone Go 语言的源码包,而其使用的版本管理系统为 Mercurial,因此我们在获取之前需要安装该软件,在 Ubuntu 下安装非常方便,在终端依次输入以下指令:

sudo apt-get install python-setuptools
sudo apt-get install python-dev
sudo apt-get install build-essential
sudo apt-get install mercurial

第三步:获取Go语言源码包
方法一:请先使用"cd"命令跳转到你想保存Go语言源码的路径,因为环境变量设置好以后再改相对麻烦很多,当然你也可以获取完之后使用"mv"命令移动到你想要的任何位置,但建议一次就想好放在哪里。然后在终端输入以下指令:

hg clone -r release https://go.googlecode.com/hg/ go

方法二:到 http://golang.org/dl/ (或墙内 http://www.golangtc.com/download)页面,选择合适你系统的源码包,下载后解压到指定位置,注意源码包中根目录的名字应该是 go,一会设置环境变量时需要用到,go这个文件夹中应当包含大致如下图内容:

第四步:配置Go语言环境变量
环境变量的配置不论是下一步中编译Go语言源码还是在之后的开发过程中都是至关重要的。
首先,使用任何文本编辑器打开 home 目录下的 .bashrc 文件,如果你不确定到底在哪里,在终端直接输入以下指令也可以:

nano ~/.bashrc

然后进入文本编辑界面,请在文件的最后追加大致如下图内容:

其中,GOROOT应当是你存放源码包的位置,也就是你刚才获得源码解压后 go 文件夹的绝对路径,例如:我的路径为 $HOME/go
GOARCH 与 GOOS 与你下载的发行版有关,例如:我的是 32 位的 Ubuntu,因此 GOARCH 为 386,GOOS 为 linux
PATH 的设置最为关键,首先在等号右侧输入"${PATH}:",接下来输入的就是你前面的 GOROOT 路径下的 bin 文件夹的路径,例如:我的 GOROOT 路径为 $HOME/go,则后面需要追加的内容为 $HOME/go/bin
最后一个 GOPATH 是你的工作目录,可以随时修改,但是根据约定,在该目录,至少包含三个文件夹,bin,pkg,src,bin 文件夹用于存放编译后生成的文件,pkg 用于存放编译后生成的包(.a结尾),src 文件夹用于存放各类源码文件,包括你用网络获取的源码包,以及自己编写的源码,这样在编译时Go才能正常工作

编辑完成后,保存退出。
然后在终端输入以下指令以使我们的设置生效:

$source .bashrc

第五步:编译 Go 源码
请依次在终端输入以下指令,以切换到源码文件夹,并开始编译:

cd $GOROOT/src
./all.bash

稍等片刻,等待编译完成后,应当出现大致如下图信息:

接着,在终端输入指令 go 之后,如果看到大致如下信息,说明基本工作已经完成!

第六步:下载 Sublime Text
飞机票:http://www.sublimetext.com/
下载解压以后,双击 sublime_text,就可以使用它了,至于如何添加到 Launcher 中,请参考博文:http://my.oschina.net/Obahua/blog/110612

第七步:安装 gosublime
首先,我们需要安装 Sublime Text 的 Package Control 功能,在打开软件后,按下快捷键 Ctrl+`,(`这个符号为英文半角模式下,按下 Tab 键上方、数字键1左边的那个按键),此时会打开一个命令窗口,复制并输入以下内容,最后回车:

import urllib2,os; pf='Package Control.sublime-package'; ipp=sublime.installed_packages_path(); os.makedirs(ipp) if not os.path.exists(ipp) else None; urllib2.install_opener(urllib2.build_opener(urllib2.ProxyHandler())); open(os.path.join(ipp,pf),'wb').write(urllib2.urlopen('http://sublime.wbond.net/'+pf.replace(' ','%20')).read()); print 'Please restart Sublime Text to finish installation'

如果您使用 SUblime Text 3,请参考 http://wbond.net/sublime_packages/package_control/installation#ST3 来安装 Package Control,一共4个命令,非常简单。

安装完成会提示你重启软件,之后,你就可以发现在 Preferences 这个菜单下出现了菜单项 Package Control,大致如下图所示:

接下来,我们要安装 gosublime 插件,按住 Ctrl+Shift+p 会弹出一个会话框,在其中输入"install"后,大致如下图所示:

接下来按回车,会出现一个安装包的对话框,大致如下图所示:

输入"gosublime",选中并回车,然后输入"go build",选中并回车(可选)。
至此,配置 gosublime 完成。

第八步:Hello World!
在终端输入以下指令,将在你的 $GOPATH/src 文件夹下创建一个 hello.go 的文件,并进入文本编辑界面

nano $GOPATH/src/hello.go

在文本编辑器中输入以下内容:

保存并退出,然后在终端输入以下指令:

go run $GOPATH/src/hello.go

此时,应当看到大致如下图结果:

第九步:非标准库代码输入提示
最新版本的 gosublime 要求设置你的 GOPATH 变量到它的配置文件中,否则可能无法支持对非标准库包的代码输入提示,直接上图,打开 Settings - Default,拷贝所有内容,然后粘贴到 Settings - User 中(这样的做法是为了保证你的修改不会被插件更新而重置,这插件更新很频繁)。

接下来,在 env 这栏中输入你的 GOPATH 变量,重启设置生效。

恭喜你,成功啦!开始享受你的愉快GO语言之旅吧~~~~~Let's Go!!!!!!!

标签: go 安装配置
共有 人打赏支持
无闻
粉丝 607
博文 15
码字总数 17351
作品 8
评论 (23)
lidashuang
无闻

引用来自“lidashuang”的评论

多谢支持~~
张瑞2012
为什么Ctrl+`打不开命令窗口?
yifanes

引用来自“张瑞2012”的评论

为什么Ctrl+`打不开命令窗口?

看看是不是其他程序占用了这个快捷键
无闻

引用来自“yifanes”的评论

引用来自“张瑞2012”的评论

为什么Ctrl+`打不开命令窗口?

看看是不是其他程序占用了这个快捷键

我觉得是冲突把。。还有可能是焦点问题,你按之前鼠标点一下sublime的窗口
喻恒春
@无闻 大师,windows系统下也需要编译一次才行,直接使用bin安装包是不行的,是这个意思么?
无闻

引用来自“喻恒春”的评论

@无闻 大师,windows系统下也需要编译一次才行,直接使用bin安装包是不行的,是这个意思么?

直接安装包是可以的,不过我的电脑经常出奇葩问题,所以我干脆每次都自己编译,反正也很快
overlords

引用来自“无闻”的评论

引用来自“yifanes”的评论

引用来自“张瑞2012”的评论

为什么Ctrl+`打不开命令窗口?

看看是不是其他程序占用了这个快捷键

我觉得是冲突把。。还有可能是焦点问题,你按之前鼠标点一下sublime的窗口

确实是冲突了。我装的QQ拼音输入法他就占用了这个键
WuWarren
Hi, 最近在学习GO,以及Go web开发。但我的Mac上配置sublime,安装package control就出现问题。请问在mac下怎么安装package control?
无闻

引用来自“WuWarren”的评论

Hi, 最近在学习GO,以及Go web开发。但我的Mac上配置sublime,安装package control就出现问题。请问在mac下怎么安装package control?

什么错误
WuWarren

引用来自“无闻”的评论

引用来自“WuWarren”的评论

Hi, 最近在学习GO,以及Go web开发。但我的Mac上配置sublime,安装package control就出现问题。请问在mac下怎么安装package control?

什么错误

现在机器不在身边。我记得说是语法错误。我晚上回去看看
WuWarren
昨天晚上网上找了个那文件,直接把那个文件拷贝过去就OK。
J_win
无法输入中文呀
无闻

引用来自“J_win”的评论

无法输入中文呀

只有linux输入不了
西二三旗
gosublime 运行一个HttpServer 或者一个死循环 怎么停止了??求教 在网上找了半天 没有..
无闻

引用来自“shichaopeng”的评论

gosublime 运行一个HttpServer 或者一个死循环 怎么停止了??求教 在网上找了半天 没有..

重启sublime!
西二三旗
为什么在sublime中能运行在命令行下面出现这个问题go build runtime: windows/386 must be bootstrapped using make.bash
谢谢
无闻

引用来自“shichaopeng”的评论

为什么在sublime中能运行在命令行下面出现这个问题go build runtime: windows/386 must be bootstrapped using make.bash
谢谢

怎么感觉是go没正确安装
西二三旗

引用来自“无闻”的评论

引用来自“shichaopeng”的评论

为什么在sublime中能运行在命令行下面出现这个问题go build runtime: windows/386 must be bootstrapped using make.bash
谢谢

怎么感觉是go没正确安装

恩,是的我的系统是64位的,我选的是386,换成amd64就好了。。。谢谢
GDP_搞地皮
有必要安装SublimeLinter+golint包吗? 如何配置golint?
×
无闻
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: