文档章节

Ubuntu 配置 Go 语言开发环境(Sublime Text+GoSublime)

无闻
 无闻
发布于 2013/02/28 09:03
字数 1743
阅读 37595
收藏 56

最后更新: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!!!!!!!

© 著作权归作者所有

共有 人打赏支持
无闻

无闻

粉丝 647
博文 15
码字总数 17351
作品 8
美国
程序员
加载中

评论(23)

无闻
无闻

引用来自“马行空牛耕田”的评论

关于Go的环境变量设置,GORACH=386应该是笔误了,正确的写法应该是GOARCH=386。

补充一条,如果是64位系统,可以改为:GOARCH=amd64
附完整的列表如下:

$GOOS  $GOARCH
darwin  386
darwin  amd64
darwin  arm
darwin  arm64
dragonfly  amd64
freebsd  386
freebsd  amd64
freebsd  arm
linux  386
linux  amd64
linux  arm
linux  arm64
linux  ppc64
linux  ppc64le
netbsd  386
netbsd  amd64
netbsd  arm
openbsd  386
openbsd  amd64
openbsd  arm
plan9  386
plan9  amd64
solaris  amd64
windows  386
windows  amd64
多谢指正!确实是笔误。。嘿嘿
章冬阳
章冬阳
关于Go的环境变量设置,GORACH=386应该是笔误了,正确的写法应该是GOARCH=386。

补充一条,如果是64位系统,可以改为:GOARCH=amd64
附完整的列表如下:

$GOOS  $GOARCH
darwin  386
darwin  amd64
darwin  arm
darwin  arm64
dragonfly  amd64
freebsd  386
freebsd  amd64
freebsd  arm
linux  386
linux  amd64
linux  arm
linux  arm64
linux  ppc64
linux  ppc64le
netbsd  386
netbsd  amd64
netbsd  arm
openbsd  386
openbsd  amd64
openbsd  arm
plan9  386
plan9  amd64
solaris  amd64
windows  386
windows  amd64
无闻
无闻

引用来自“GDP_搞地皮”的评论

有必要安装SublimeLinter+golint包吗? 如何配置golint?

额。。没用过golint,我觉得他的规则不太和自己的习惯兼容
GDP_搞地皮
GDP_搞地皮
有必要安装SublimeLinter+golint包吗? 如何配置golint?
西二三旗
西二三旗

引用来自“无闻”的评论

引用来自“shichaopeng”的评论

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

怎么感觉是go没正确安装

恩,是的我的系统是64位的,我选的是386,换成amd64就好了。。。谢谢
无闻
无闻

引用来自“shichaopeng”的评论

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

怎么感觉是go没正确安装
西二三旗
西二三旗
为什么在sublime中能运行在命令行下面出现这个问题go build runtime: windows/386 must be bootstrapped using make.bash
谢谢
无闻
无闻

引用来自“shichaopeng”的评论

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

重启sublime!
西二三旗
西二三旗
gosublime 运行一个HttpServer 或者一个死循环 怎么停止了??求教 在网上找了半天 没有..
无闻
无闻

引用来自“J_win”的评论

无法输入中文呀

只有linux输入不了
Windows 7安装ST3, 搭建Go开发环境,Markdown编辑环境

Window 7下安装Sublime Text 3, 搭建GO开发环境和 Markdown编辑环境 第一步:Go环境的安装 直接使用官方的安装包就可以了 第二步: 下载ST3 下载ST3 http://www.sublimetext.com/3 第三步: ...

michaelpan
2014/04/14
0
0
Ubuntu 14.04 上搭建 Golang 开发环境配置

Golang 语言是 Google 10 年前推出的编程语言,目前最新的 1.4 版本 已经正式开始 支持 Android 开发,Golang 也是 Docker 的开发语言。 本文记录 Ubuntu 14.04.1 64bit 上 Golang 语言开发环...

mickelfeng
2016/02/05
0
0
quanpower的Golang学习笔记---2.Sublime Text 2搭建Go开发环境

GO语言吉祥物,很可爱吧。 Go语言的hello world!代码: package main   上一节安装好Go以后,我们就可以搭建开发环境了,这里我用的是 Sublime Text 2 + GoSublime + gocode。对于不了解Sub...

quanpower
2014/01/09
0
1
配置Elementary OS作为工作环境

买了新电脑之后,就换上Elementary OS作为自己的Linux版本。不得不说,Elementary OS确实是我见过的最漂亮的Linux发行版,而且它的panel+dock的设计也很适合用来工作。折腾一番之后终于配置好...

halfcoder
2013/10/12
0
0
Ubuntu 13.04 golang开发环境配置

env: ubuntu 13.04 i386 go 1.0.3 sublime text 2 go/golang不错的IDE组合:gocode + sublime text 2 + gosublime 首先安装go,两种方法: 1. 自动:sudo apt-get install golang 配置环境系......

Honghe
2013/04/28
0
0

没有更多内容

加载失败,请刷新页面

加载更多

【大福利】极客时间专栏返现二维码大汇总

我已经购买了如下专栏,大家通过我的二维码你可以获得一定额度的返现! 然后,再给大家来个福利,只要你通过我的二维码购买,并且关注了【飞鱼说编程】公众号,可以加我微信或者私聊我,我再...

飞鱼说编程
今天
1
0
Spring5对比Spring3.2源码之容器的基本实现

最近看了《Spring源码深度解析》,该书是基于Spring3.2版本的,其中关于第二章容器的基本实现部分,目前spring5的实现方式已有较大改变。 Spring3.2的实现: public void testSimpleLoad(){...

Ilike_Java
今天
1
0
【王阳明心学语录】-001

1.“破山中贼易,破心中贼难。” 2.“夫万事万物之理不外于吾心。” 3.“心即理也。”“心外无理,心外无物,心外无事。” 4.“人心之得其正者即道心;道心之失其正者即人心。” 5.“无...

卯金刀GG
今天
2
0
OSChina 周三乱弹 —— 我们无法成为野兽

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @ _刚刚好: 霸王洗发水这波很骚 手机党少年们想听歌,请使劲儿戳(这里) hahahahahahh @嘻酱:居然忘了喝水。 让你喝可乐的话, 你准忘不了...

小小编辑
今天
10
0
vm GC 日志 配置及查看

-XX:+PrintGCDetails 打印 gc 日志 -XX:+PrintTenuringDistribution 监控晋升分布 -XX:+PrintGCTimeStamps 包含时间戳 -XX:+printGCDateStamps 包含时间 -Xloggc:<filename> 可以将数据保存为......

Canaan_
昨天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部