permalink: 1.11.6/docs/build/compile-from-source/ version: 1.11.6

Pegasus目前只支持Linux平台进行源码编译。编译过程中遇到问题,可以通过[Github Issues]({{ site.pegasus_github_url }}/issues)向我们咨询。

环境要求

  • GCC 4.9.4+
  • CMake 3.11+

Ubuntu环境配置

你可以参考 [pegasus-build-dev/ubuntu16.04](https://github.com/pegasus-kv/pegasus-docker/blob/{{ page.version }}/pegasus-build-env/ubuntu16.04/Dockerfile) 的Docker镜像安装全部依赖。

CentOS环境配置

你可以参考 [pegasus-build-dev/centos7](https://github.com/pegasus-kv/pegasus-docker/blob/{{ page.version }}/pegasus-build-env/centos7/Dockerfile) 的Docker镜像安装全部依赖。

源码编译

请先参考下载文档获取源码。

由于历史原因,此版本需要额外下载第三方库源码包,同时还需略过安装 redis-proxy:

cd /your/local/apache-pegasus-source/rdsn/thirdparty
wget https://pegasus-thirdparties.oss-cn-beijing.aliyuncs.com/1.10.0-thirdparties-src.zip
unzip 1.10.0-thirdparties-src.zip

cd ../..
sed -i /"add_subdirectory(redis_protocol)"/d src/CMakeLists.txt

随后运行编译:

cd /your/local/apache-pegasus-source

./run.sh build -c

编译后输出会放在当前目录的DSN_ROOT/文件夹下,里面包含bin、include、lib目录。

编译打包

打包server端程序包,用于服务部署:

./run.sh pack_server

打包client端库,用于C/C++端客户端开发:

./run.sh pack_client

打包tools工具集,里面包含了各种工具(shell、bench):

./run.sh pack_tools

编译成功后,推荐先体验onebox集群