首页
社区
课程
招聘
[旧帖] [分享][推荐]google的GO语言环境安装 0.00雪花
发表于: 2010-5-27 15:08 1417

[旧帖] [分享][推荐]google的GO语言环境安装 0.00雪花

2010-5-27 15:08
1417
首先打开install Go页面:http://golang.org/doc/install.html
按着向导一步一步来安装。
本人环境:ubuntu9.10,acer Aspire4710 32位机器
下文"#"表示说明文字,其余为在终端中的命令或者文件操作

1.Environment variables(环境变量设置)
(1)cd
(2)mkdir go
(3)mkdir bin
(4)vi .bashrc
(5)#在文件最后添加如下内容(根据机器的不同而使用不同的GOOS和GOARCH的设置,一般都为linux和386,大部份还是使用这两样的多):
export GOROOT=$HOME/go
export GOOS=linux
export GOARCH=386
export GOBIN=$HOME/bin
#然后执行:wq保存文件
(6)source .bashrc
(7)sudo /etc/profile
(8)#在文件最后修改PATH,PATH尚未存在,直接添加如下语句,否则添加$HOME/bin
export PATH=$HOME/bin:$PATH
#然后执行:wq保存文件
(9)source /etc/profile
(10)#执行env | grep '^GO'测试是否已经正确设置GO的环境变量

2.获取一些GO需要的资源
(1)#一般来说都没有安装mercurial(源代码控制管理(SCM),网上直接查mercurial)
#在ubuntu里执行的是(区别于官网上说的sudo easy_install mercurial不同)
sudo apt-get install mercurial
(2)#保证$GOROOT是不存在的或者是这空的
hg clone -r release https://go.googlecode.com/hg &GOROOT

3.安装Go
(1)#安装必要的软件(在ubuntu9.10里已安装部分
sudo apt-get install bison gcc libc6-dev ed
(2)cd $GOROOT/src
(3)./all.bash
#执行时间较长,正常的话按官网上来说,最后应该提示---cd ../test
#N known bugs; 0unexpected bugs
#但我遇到了一些问题,不过并不影响后来的使用,希望有高手帮忙解决一下这个问题,最后错误如下:
#make[2]: Leaving directory `/home/chenhaiyu/go/src/pkg/http'
#--- FAIL: http.TestClient
#    Get http://www.google.com/robots.txt: unexpected EOF
#--- FAIL: http.TestRedirect
#    Get http://codesearch.google.com/: unexpected EOF
#FAIL
#make[1]: *** [test] 错误 1
#make[1]:正在离开目录 `/home/chenhaiyu/go/src/pkg/http'
#make: *** [http.test] 错误 2

4.按着官网上写示例(官网用的是64位系统,我用的是linux 386,所以用的是8,区别于6,示例成功运行
(1)cd
(2)mkdir helloGo
(3)cd helloGo
(5)cat > hello.go <<EOF
package main
import "fmt"
func main() {
fmt.Printf("hello, world\n"
}
EOF
(6)8g hello.go
(7)8l hello.8
(8)./8.out
hello, world

5.至此GO语言及环境搭建完成,赶紧去看看官网吧http://golang.org/,里面有Documents、Programming、Help等目录,都是对初学者很有帮助的资料。
当然,你也参考$GOROOT下的目录,里面有很多资料的,初步看了一下
(1).doc目录,官网上的参考文档,但没有看到index.html,只能一个一个来点,比如:install.html就是安装引导等
(2).include是一些头文件,玩过C的朋友很清楚这是什么意思,像libc.h里面主要是一些结构体,指针等的定义
(3).lib包里包含了几个.a结尾的包文件,应该属于类库了,go运行时应该是信赖于这些类库的
(4).misc目录下是一些混杂的东东,估计是开发时留在那里用的一些方法类库等,目前无需去关心
(5).pkg,这里包含了很多的.a包文件,但不知道官方哪里有api文档可以参考,用这些库文件可以提供很多的api可以调用
(6).src目录,无需多说,当然是源码文件夹
(7).test目录下包含了好多的测试例子,当然还包含我们练习的helloworld.go啦,通过这些测试例子,可以快速提升你对GO语言的熟悉程度

6.总结,开发一门新语言确实是一件很困难的事,不仅旧语言的功能都要有,更加是要加上自己的新特性,当然GO语言刚起步,但一看到它可以融合flex、java、C、C++等语言的特点,所谓集大成者,当然希望GO不要丢失其他语言的优点,这样才能走得更好。
--
汉家烽火起塞边,匈奴十万闯雁关。骠骑绝尘蔽天日,羽林飞度追利箭。两军相接惊
鬼神,鼓声如雷剑如电。健儿钝戈拾短刀,胡马断蹄舞大干。八百少年踏圆月,龙城
震碎敌胆寒:阏氏垂泪平燕然,右贤泗涕失祁连。将军逐狼封狼山,红旗似海瀚海燃
。朔漠马尸掩人骨,青草白雪换朱染。单于夜逃死汗血,汉卒矢尽凯歌还。归来辞谢
黄金爵,葡萄美酒卧大宛。

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 0
支持
分享
最新回复 (4)
雪    币: 13
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
大热的天,自己先顶个!

                大家继续。。。
2010-5-27 15:09
0
雪    币: 13
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
没人顶贴、我再顶个
2010-5-27 15:14
0
雪    币: 1582
活跃值: (40)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
标记下,慢慢看
2010-5-27 15:18
0
雪    币: 6250
活跃值: (3315)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
拒绝GOOGLE
2010-5-28 13:01
0
游客
登录 | 注册 方可回帖
返回
//