跳到主要内容
版本: 最新版本-3.5

在 Ubuntu 上编译 StarRocks

本主题介绍如何在 Ubuntu 操作系统上编译 StarRocks。 StarRocks 支持在 x86_64 和 AArch64 架构上编译。

前提条件

安装依赖项

运行以下命令安装必要的依赖项

sudo apt-get update
sudo apt-get install automake binutils-dev bison byacc ccache flex libiberty-dev libtool maven zip python3 python-is-python3 bzip2 -y

安装编译器

如果您使用的是 Ubuntu 22.04 或更高版本,请运行以下命令安装工具和编译器

sudo apt-get install cmake gcc g++ default-jdk -y

如果您使用的是低于 22.04 的 Ubuntu 版本,请运行以下命令检查工具和编译器的版本

  1. 检查 GCC/G++ 版本

    gcc --version
    g++ --version

    GCC/G++ 版本必须为 10.3 或更高版本。 如果您使用的是早期版本,请单击此处安装 GCC/G++

  2. 检查 JDK 版本

    java --version

    OpenJDK 版本必须为 8 或更高版本。 如果您使用的是早期版本,请单击此处安装 OpenJDK

  3. 检查 CMake 版本

    cmake --version

    CMake 版本必须为 3.20.1 或更高版本。 如果您使用的是早期版本,请单击此处安装 CMake

编译 StarRocks

运行以下命令开始编译

./build.sh

默认编译并行度等于 CPU 核心数/4。 假设您有 32 个 CPU 核心,则默认并行度为 8。

如果要调整并行度,可以通过命令行中的 -j 指定用于编译的 CPU 核心数。

以下示例使用 24 个 CPU 核心进行编译

./build.sh -j 24

常见问题

问:在 Ubuntu 20.04 上构建 aws_cpp_sdk 失败,并显示错误“Error: undefined reference to pthread_create”。 我该如何解决这个问题?

答:此错误是由于 CMake 版本较低造成的。 请将 CMake 升级到 3.20.1 或以上版本。