在开发中,为了实现获取GO协程号,对GO进行源码修改。之后编译安装,本文记录过程,方便以后使用。
1、编译GO高版本(1.5版本之上)的需要 先编译GO1.4版本。先下载GO1.4版本。
https://storage.googleapis.com/golang/go1.4.3.src.tar.gz
下载地址。
2、解压 go 到 ~/go 下
tar -zxvf go1.4.3.src.tar.gz
3、编译GO1.4
到go src 目录下。
执行命令
CGO_ENABLED=0 ./make.bash
4、设置环境变量
export GOROOT_BOOTSTRAP=~/go1.4
5、下载高版本的GO
6、解压
7、修改源码
找到 go 中src 下 /src/runtime/mprof.go 文件
在文件最后增加 方法
func GetGoId() int64{
gp := getg()
return gp.goid
}
8.编译高版本的GO
到go src 目录下 执行命令
./make.bash
执行完之后 显示
编译成功。