本文是《循序渐进go语言》第一篇-安装篇。
1 安装
指令如下:
echo "export GOROOT=$HOME/golang/go" >> ~/.bash_profile
echo "export GOPATH=$HOME/golang/path" >> ~/.bash_profile
echo "export PATH=$PATH:$HOME/golang/go/bin" >> ~/.bash_profile
echo "export GOROOT_BOOTSTRAP=$HOME/golang/go1.4" >> ~/.bash_profile
source ~/.bash_profile
cd ~
mkdir golang && cd golang
git clone https://github.com/golang/go.git go
cp -r go go1.4
cd go1.4
git checkout -b release-branch.go1.4 origin/release-branch.go1.4
cd src
./make.bash
cd ../../go
git checkout -b release-branch.go1.8 origin/release-branch.go1.8
cd src
./make.bash
go version
这样就OK了。
2 修改源码
如果想改一下源码,自己调试下,可以像我一样,修改一下:
runtime/proc.go 【这儿是go程序执行的必经之路,先不用管具体为什么,后面我们会分析】
// The main goroutine.
func main() {
// 增加下面这一样,用于调试。
println("welcome to zp' go source world~~~")
g := getg()
// Racectx of m0->g0 is used only as the parent of the main goroutine.
// It must not be used for anything else.
g.m.g0.racectx = 0
...
然后再次跳转到对应的go代码的src文件目录下
cd $HOME/golang/go/src
然后再次执行
./make.bash
这样就修改代码OK了。
3 来个例子
跳转到gopath的路径下,比如本文的
cd $HOME/golang/path
新建go测试文件 test.go
package main
func main() {
println("hello")
}
然后执行
go run test.go
看下结果
image.png
我们写入到源码中的代码已经生效了。
4 总结
本文讲解了在MAC上如何使用源码安装go。然后对go源码进行了一点细微的修改(主要是为了体验这个过程),编译之后,然后写了一个小demo, 验证是否修改OK。希望对你有所帮助~
5 其他
本文是《循序渐进go语言》的第一篇-《MAC上go源码安装与修改》。
如果有疑问,可以直接留言,也可以关注公众号 “链人成长chainerup” 提问留言,或者加入知识星球“链人成长”~
网友评论