编译

本文档主要介绍如何通过源码编译 Doris。

使用 Docker 开发镜像编译(推荐)

使用现成的镜像

  1. 下载 Docker 镜像

    $ docker pull apachedoris/doris-dev:build-env

    检查镜像下载完成:

    1. $ docker images
    2. REPOSITORY TAG IMAGE ID CREATED SIZE
    3. apachedoris/doris-dev build-env f8bc5d4024e0 21 hours ago 3.28GB

注: 针对不同的 Doris 版本,需要下载对应的镜像版本

image versioncommit idrelease version
apachedoris/doris-dev:build-envbefore ff0dd0d编译 - 图10.8.x, 0.9.x
apachedoris/doris-dev:build-env-1.1ff0dd0d编译 - 图2 4ef5a8c编译 - 图30.10.x, 0.11.x
apachedoris/doris-dev:build-env-1.24ef5a8c编译 - 图4 or later0.12.x or later
  1. 运行镜像

    $ docker run -it apachedoris/doris-dev:build-env

    如果你希望编译本地 Doris 源码,则可以挂载路径:

    1. $ docker run -it -v /your/local/incubator-doris-DORIS-x.x.x-release/:/root/incubator-doris-DORIS-x.x.x-release/ apachedoris/doris-dev:build-env
  2. 下载源码

    启动镜像后,你应该已经处于容器内。可以通过以下命令下载 Doris 源码(已挂载本地源码目录则不用):

    1. $ wget https://dist.apache.org/repos/dist/dev/incubator/doris/xxx.tar.gz
    2. or
    3. $ git clone https://github.com/apache/incubator-doris.git
  3. 编译 Doris

    1. $ sh build.sh

    编译完成后,产出文件在 output/ 目录中。

自行编译开发环境镜像

你也可以自己创建一个 Doris 开发环境镜像,具体可参阅 docker/README.md 文件。

直接编译(CentOS/Ubuntu)

你可以在自己的 linux 环境中直接尝试编译 Doris。

  1. 系统依赖

    GCC 5.3.1+, Oracle JDK 1.8+, Python 2.7+, Apache Maven 3.5+, CMake 3.11+

    如果使用Ubuntu 16.04 及以上系统 可以执行以下命令来安装依赖

    sudo apt-get install build-essential openjdk-8-jdk maven cmake byacc flex automake libtool-bin bison binutils-dev libiberty-dev

    安装完成后,自行设置环境变量 PATH, JAVA_HOME 等。

  2. 编译 Doris

    1. $ sh build.sh

    编译完成后,产出文件在 output/ 目录中。