Codis的源码编译生成tar包
一、Go环境的安装
1、下载地址 https://golang.org/dl/
2、解压 tar -zxvf go1.7.1.linux-amd64.tar.gz -C /usr/local
3、修改配置文件
vi /etc/profile
export GOROOT=/usr/local/go
export GOPATH=/usr/local/data/go
export PATH=$PATH:$GOROOT/bin:$GOPATH
4、查看安装完成
go version
详细文档查看:https://golang.org/doc/install
二、编译codis源码
(1)、安装go环境 检查环境
go version
(2)、设置编译环境
注意 $GOPATH 是本机所有第三方库 go 项目所在目录,Codis 仅是其中之一。
添加 $GOPATH/bin 到 $PATH,例如:PATH=$PATH:$GOPATH/bin,并安装 godep 工具。
$ go env GOPATH
/usr/local/data/g
安装godep方法:
下载godep源码:https://github.com/tools/godep
mkdir $GOPATH/src/github.com/tools/godep
将 godep 目录移动到 $GOPATH/src/github.com/tools/godep,并进入该目录;
运行命令 go install ./,该命令会将 godep 生成到 $GOPATH/bin 下。
(3)、编译codis
下载 Codis 源代码 https://github.com/CodisLabs/codis/releases
Codis 源代码需要下载到 $GOPATH/src/github.com/CodisLabs/codis:
$ mkdir -p $GOPATH/src/github.com/CodisLabs
$ cd $GOPATH/src/github.com/CodisLabs
将源码下载后上传到该目录 并重命名为codis
$ cd $GOPATH/src/github.com/CodisLabs/codis
$ make
看到如下效果:
make -j -C extern/redis-2.8.21/
... ...
go build -i -o bin/codis-dashboard ./cmd/dashboard
go build -i -o bin/codis-proxy ./cmd/proxy
go build -i -o bin/codis-admin ./cmd/admin
go build -i -o bin/codis-ha ./cmd/ha
go build -i -o bin/codis-fe ./cmd/fe
$ ls bin/
total 69124
drwxr-xr-x 4 codis codis 4096 Jan 4 14:55 assets
-rwxr-xr-x 1 codis codis 17600752 Jan 4 14:55 codis-admin
-rwxr-xr-x 1 codis codis 18416320 Jan 4 14:55 codis-dashboard
-rwxr-xr-x 1 codis codis 9498040 Jan 4 14:55 codis-fe
-rwxr-xr-x 1 codis codis 9956328 Jan 4 14:55 codis-ha
-rwxr-xr-x 1 codis codis 11057280 Jan 4 14:55 codis-proxy
-rwxr-xr-x 1 codis codis 4234432 Jan 4 14:55 codis-server
-rw-r--r-- 1 codis codis 148 Jan 4 14:55 version
... ...
$ cat bin/version
version = 2016-01-03 14:53:22 +0800 @51f06ae3b58a256a58f857f590430977638846a3
compile = 2016-01-04 15:00:17 +0800 by go version go1.5.2 linux/amd64
(4)该编译成功的codis即可安装
tar -zcvf codis3.1.3-go1.7.4-linux.tar.gz codis
最新文章
- 4、解析配置文件 redis.conf、Redis持久化RDB、Redis的主从复制
- 简述.NET事务应用原则
- CoreLocation定位技术
- SQL数据库修改默认备份和恢复路径
- 在oracle中,如何当前系统时间往前推7天
- Nodejs Express下引入本地文件的方法
- 手动方式安装 eclipse 的svn插件 Subversive和 Subversive SVN Connectors
- android 获取activity 的name
- C#调用Java代码
- GB2312引进和使用的字体
- P5302 [GXOI/GZOI2019]特技飞行
- AEAI HR开源人力资源管理v1.6.0发版公告
- 爬虫_豆瓣全部正在热映电影 (xpath)
- suctf逆向部分
- CSS笔记——属性选择器
- 【BZOJ1047】[HAOI2007]理想的正方形(单调队列,动态规划)
- 错误提示:通过 Web 服务器的身份验证的用户无权打开文件系统上的文件
- Linux下分析磁盘镜像
- UVa 11292 Dragon of Loowater (水题,排序)
- yocto-sumo源码解析(十): ProcessServer.idle_commands