permalink: docs/build/compile-from-source/ redirect_from:
Pegasus目前只支持Linux平台进行源码编译。编译过程中遇到问题,可以通过[Github Issues]({{ site.pegasus_github_url }}/issues)向我们咨询。
你可以参考 pegasus-build-dev/ubuntu16.04 的Docker镜像安装全部依赖。
apt-get update -y; \ apt-get -y install build-essential \ python3-pip \ libaio-dev \ libsnappy-dev \ libbz2-dev \ libzstd-dev \ liblz4-dev \ zlib1g \ zlib1g.dev \ patch \ git \ curl \ zip \ automake \ libtool \ libssl-dev \ bison \ flex; pip3 install --no-cache-dir cmake
你可以参考 pegasus-build-dev/centos7 的Docker镜像安装全部依赖。
yum -y install centos-release-scl \ scl-utils \ epel-release; yum -y install devtoolset-7-gcc \ devtoolset-7-gcc-c++ \ python3 \ automake \ autoconf \ make \ libtool \ git \ file \ wget \ unzip \ which \ openssl-devel \ libaio-devel \ snappy-devel \ bzip2-devel \ zlib \ zlib-devel \ libzstd-devel \ lz4-devel \ bison \ flex \ patch; pip3 install --no-cache-dir cmake
请先参考下载文档获取源码。
./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集群。