This is an automated email from the ASF dual-hosted git repository.

morningman pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/doris-website.git


The following commit(s) were added to refs/heads/master by this push:
     new bb3f9cfb3f0 [fix](arm) Revert arm doc changes (#926)
bb3f9cfb3f0 is described below

commit bb3f9cfb3f08189492a68ab16a000ea66bc0af06
Author: zclllhhjj <[email protected]>
AuthorDate: Tue Sep 24 12:00:28 2024 +0800

    [fix](arm) Revert arm doc changes (#926)
    
    this version has been checked to work well
---
 .../install/source-install/compilation-arm.md      | 622 ++++++++++++++-------
 1 file changed, 434 insertions(+), 188 deletions(-)

diff --git 
a/i18n/zh-CN/docusaurus-plugin-content-docs/current/install/source-install/compilation-arm.md
 
b/i18n/zh-CN/docusaurus-plugin-content-docs/current/install/source-install/compilation-arm.md
index 61a62e5915f..4903049929a 100644
--- 
a/i18n/zh-CN/docusaurus-plugin-content-docs/current/install/source-install/compilation-arm.md
+++ 
b/i18n/zh-CN/docusaurus-plugin-content-docs/current/install/source-install/compilation-arm.md
@@ -27,9 +27,11 @@ under the License.
 import Tabs from '@theme/Tabs';
 import TabItem from '@theme/TabItem';
 
+# Apache Doris Arm 架构编译
+
 本文档介绍如何在 ARM64 平台上编译 Doris。
 
-注意,该文档仅作为指导性文档。在不同环境中编译可能出现其他错误。如遇问题,欢迎向 Doris [提出 
Issue](https://github.com/apache/doris/issues) 或解决方案。
+注意,该文档仅作为指导性文档。在不同环境中编译可能出现其他错误。如遇问题,欢迎向 Doris [提出 
Issue](https://github.com/apache/doris-website/issues) 或解决方案。
 
 :::tip
 目前还不支持存算分离模式编译部署
@@ -37,87 +39,122 @@ import TabItem from '@theme/TabItem';
 
 ## 硬件/操作系统环境
 
--   系统版本:CentOS 7.9、Ubuntu 20.04
+本章内容在以下环境中已经验证可行:
+
+1. KylinOS:
 
--   系统架构:ARM64
+```shell
+$> cat /etc/.kyinfo
+name=Kylin-Server
+milestone=10-SP1-Release-Build04-20200711
+arch=arm64
+beta=False
+time=2020-07-11 17:16:54
+dist_id=Kylin-Server-10-SP1-Release-Build04-20200711-arm64-2020-07-11 17:16:54
+
+$> cat /proc/cpuinfo
+model name  : Phytium,FT-2000+/64
+```
 
--   内存:16 GB +
+2. CentOS 7.9 及以上
+
+```shell
+$> lsb_release -a
+LSB Version:   :core-4.1-aarch64:core-4.1-noarch
+Distributor ID:        CentOS
+Description:   CentOS Linux release 7.9.2009 (AltArch)
+Release:       7.9.2009
+Codename:      AltArch
+```
+
+3. Ubuntu 20.04
 
 ## 软件环境配置
 
 ### 软件环境对照表
 
-| 组件名称                                                     | 组件版本              
  |
-| ------------------------------------------------------------ | 
----------------------- |
-| Git                                                          | 2.0+          
          |
-| JDK                                                          | 1.8.0         
          |
-| Maven                                                        | 3.6.3         
          |
-| NodeJS                                                       | 16.3.0        
          |
-| LDB-Toolchain                                                | 0.9.1         
          |
-| 常备环境:byacc patch automake libtool make which file ncurses-devel 
gettext-devel unzip bzip2 zip util-linux wget git python2 | yum 或 apt 自动安装即可 |
-| autoconf                                                     | 2.69          
          |
-| bison                                                        | 3.0.4         
          |
+| 组件名称                                                     | 组件版本             |
+| ------------------------------------------------------------ | 
-------------------- |
+| Git                                                          | 2.0+          
       |
+| JDK                                                          | 1.8.0         
       |
+| Maven                                                        | 3.6.3         
       |
+| NodeJS                                                       | 16.3.0        
       |
+| LDB-Toolchain                                                | 0.9.1         
       |
+| 常备环境:<br />byacc<br />patch<br />automake<br />libtool<br />make<br 
/>which<br />file<br />ncurses-devel<br />gettext-devel<br />unzip<br 
/>bzip2<br />zip<br />util-linux<br />wget<br />git<br />python2 | 
yum或apt自动安装即可 |
+| autoconf                                                     | 2.69          
       |
+| bison                                                        | 3.0.4         
       |
+
+### 软件环境安装命令
 
-### CentOS 7.9 软件环境安装
+<Tabs>
+  <TabItem value="CentOS 7.9" label="CentOS 7.9" default>
+    <p>
 
-**1.  创建软件下载安装包根目录和软件安装根目录**
+1. 创建软件下载安装包根目录和软件安装根目录
 
 ```shell
 # 创建软件下载安装包根目录
 mkdir /opt/tools
-
 # 创建软件安装根目录
 mkdir /opt/software
 ```
+  </p>
+    <p>
+
+2. 安装依赖项
 
-**2.  安装依赖项**
+  - Git
 
 ```shell
-### Git ###
-# 省去编译麻烦,直接使用 yum 安装
-yum install -y git
-
-### JDK8 两种方式,任选一种 ###
-# 第一种是省去额外下载和配置,直接使用 yum 安装,安装 devel 包是为了获取一些工具,如 jps 命令
-yum install -y java-1.8.0-openjdk java-1.8.0-openjdk-devel        
-# 第二种是下载 ARM64 架构的安装包,解压配置环境变量后使用
-cd /opt/tools
-wget 
https://doris-thirdparty-repo.bj.bcebos.com/thirdparty/jdk-8u291-linux-aarch64.tar.gz
 && tar -zxvf jdk-8u291-linux-aarch64.tar.gz && \
-mv jdk1.8.0_291 /opt/software/jdk8
+  # 省去编译麻烦,直接使用 yum 安装
+  yum install -y git
+```
 
-### Maven ###
-cd /opt/tools
-# wget 工具下载后,直接解压缩配置环境变量使用
-wget 
https://archive.apache.org/dist/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz
 && tar -zxvf apache-maven-3.6.3-bin.tar.gz && \
-mv apache-maven-3.6.3 /opt/software/maven
+  - JDK8
 
-### NodeJS ###
-cd /opt/tools
-# 下载 ARM64 架构的安装包
-wget 
https://doris-thirdparty-repo.bj.bcebos.com/thirdparty/node-v16.3.0-linux-arm64.tar.xz
 && tar -xvf node-v16.3.0-linux-arm64.tar.xz && \
-mv node-v16.3.0-linux-arm64 /opt/software/nodejs
+```shell
+  # 两种方式,第一种是省去额外下载和配置,直接使用 yum 安装,安装 devel 包是为了获取一些工具,如 jps 命令
+  yum install -y java-1.8.0-openjdk java-1.8.0-openjdk-devel
+
+  # 第二种是下载 arm64 架构的安装包,解压配置环境变量后使用
+  cd /opt/tools
+  wget 
https://doris-thirdparty-repo.bj.bcebos.com/thirdparty/jdk-8u291-linux-aarch64.tar.gz
 && \
+    tar -zxvf jdk-8u291-linux-aarch64.tar.gz && \
+    mv jdk1.8.0_291 /opt/software/jdk8
+```
 
-### LDB-Toolchain ###
-cd /opt/tools
-# 下载 LDB-Toolchain ARM 版本
-wget 
https://github.com/amosbird/ldb_toolchain_gen/releases/download/v0.9.1/ldb_toolchain_gen.aarch64.sh
 && sh ldb_toolchain_gen.aarch64.sh /opt/software/ldb_toolchain/
+  - Maven
 
-### 其他 ###
-# install required system packages
-sudo yum install -y byacc patch automake libtool make which file ncurses-devel 
gettext-devel unzip bzip2 bison zip util-linux wget git python2
+```shell
+  cd /opt/tools
+  # wget 工具下载后,直接解压缩配置环境变量使用
+  wget 
https://archive.apache.org/dist/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz
 && \
+    tar -zxvf apache-maven-3.6.3-bin.tar.gz && \
+    mv apache-maven-3.6.3 /opt/software/maven
+```
 
-# install autoconf-2.69
-cd /opt/tools
-wget http://ftp.gnu.org/gnu/autoconf/autoconf-2.69.tar.gz && \
-    tar zxf autoconf-2.69.tar.gz && \
-    mv autoconf-2.69 /opt/software/autoconf && \
-    cd /opt/software/autoconf && \
-    ./configure && \
-    make && \
-    make install
+  - NodeJS
+
+```shell
+  cd /opt/tools
+  # 下载 arm64 架构的安装包
+  wget 
https://doris-thirdparty-repo.bj.bcebos.com/thirdparty/node-v16.3.0-linux-arm64.tar.xz
 && \
+    tar -xvf node-v16.3.0-linux-arm64.tar.xz && \
+    mv node-v16.3.0-linux-arm64 /opt/software/nodejs
+```
+
+  - LDB-Toolchain
+
+```shell
+  cd /opt/tools
+  # 下载 LDB-Toolchain ARM 版本
+  wget 
https://github.com/amosbird/ldb_toolchain_gen/releases/download/v0.9.1/ldb_toolchain_gen.aarch64.sh
 && \
+    sh ldb_toolchain_gen.aarch64.sh /opt/software/ldb_toolchain/
 ```
+  </p>
+    <p>
 
-**3.  配置环境变量**
+3. 配置环境变量
 
 ```shell
 # 配置环境变量
@@ -141,93 +178,118 @@ node --version
 gcc --version
 > gcc-11
 ```
+  </p>
+    <p>
 
-### Ubuntu 20.04 软件环境安装
+4. 安装其他额外环境和组件
 
-**1.  更新 apt-get 软件库**
+```shell
+# Install required system packages
+sudo yum install -y byacc patch automake libtool make which file ncurses-devel 
gettext-devel unzip bzip2 bison zip util-linux wget git python2
+
+# Install autoconf-2.69
+cd /opt/tools
+wget http://ftp.gnu.org/gnu/autoconf/autoconf-2.69.tar.gz && \
+    tar zxf autoconf-2.69.tar.gz && \
+    mv autoconf-2.69 /opt/software/autoconf && \
+    cd /opt/software/autoconf && \
+    ./configure && \
+    make && \
+    make install
+```
+  </p>
+  </TabItem>
+  <TabItem value="Ubuntu 20.04" label="Ubuntu 20.04">
+    <p>
+
+1. 更新 apt-get 软件库
 
 ```shell
 apt-get update
 ```
+  </p>
+    <p>
+
+2. 检查 shell 命令集
 
-**2.  重新配置 shell**
+  ubuntu 的 shell 默认安装的是 dash,而不是 bash,要切换成 bash 才能执行,运行以下命令查看 sh 的详细信息,确认 
shell 对应的程序是哪个:
 
 ```shell
-# Ubuntu 的 shell 默认安装的是 dash,而不是 bash,要切换成 bash 才能执行,运行以下命令查看 sh 的详细信息,确认 
shell 对应的程序是哪个:
 ls -al /bin/sh
+```
 
-# 通过以下方式可以使 shell 切换回 bash
+  通过以下方式可以使 shell 切换回 dash:
+
+```shell
 sudo dpkg-reconfigure dash
-# 然后选择 no 或者 否 ,并确认。这样做将重新配置 dash,并使其不作为默认的 shell 工具
 ```
 
-**3.  创建软件下载安装包根目录和软件安装根目录**
+  然后选择 no 或者 否 并确认。这样做将重新配置 dash,并使其不作为默认的 shell 工具
+  </p>
+    <p>
+
+3. 创建软件下载安装包根目录和软件安装根目录
 
 ```shell
-# 创建软件下载安装包根目录
-mkdir /opt/tools
+  # 创建软件下载安装包根目录
+  mkdir /opt/tools
+  # 创建软件安装根目录
+  mkdir /opt/software
+```
+  </p>
+    <p>
 
-# 创建软件安装根目录
-mkdir /opt/software
+4. 安装依赖项
+
+  - Git
+
+```shell
+  # 省去编译麻烦,直接使用 apt-get 安装
+  apt-get -y install git
 ```
 
-**4.  安装依赖项**
+  - JDK8
 
 ```shell
-### Git ###
-# 省去编译麻烦,直接使用 apt-get 安装
-apt-get -y install git
+  # 下载 arm64 架构的安装包,解压配置环境变量后使用
+  cd /opt/tools
+  wget 
https://doris-thirdparty-repo.bj.bcebos.com/thirdparty/jdk-8u291-linux-aarch64.tar.gz
 && \
+    tar -zxvf jdk-8u291-linux-aarch64.tar.gz && \
+    mv jdk1.8.0_291 /opt/software/jdk8
+```
 
-### JDK8 ###      
-# 下载 ARM64 架构的安装包,解压配置环境变量后使用
-cd /opt/tools
-wget 
https://doris-thirdparty-repo.bj.bcebos.com/thirdparty/jdk-8u291-linux-aarch64.tar.gz
 && tar -zxvf jdk-8u291-linux-aarch64.tar.gz && \
-mv jdk1.8.0_291 /opt/software/jdk8
+  - Maven
 
-### Maven ###
-cd /opt/tools
-# wget 工具下载后,直接解压缩配置环境变量使用
-wget 
https://dlcdn.apache.org/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz
 && tar -zxvf apache-maven-3.6.3-bin.tar.gz && \
-mv apache-maven-3.6.3 /opt/software/maven
+```shell
+  cd /opt/tools
+  # wget 工具下载后,直接解压缩配置环境变量使用
+  wget 
https://dlcdn.apache.org/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz
 && \
+    tar -zxvf apache-maven-3.6.3-bin.tar.gz && \
+    mv apache-maven-3.6.3 /opt/software/maven
+```
 
-### NodeJS ###
-cd /opt/tools
-# 下载 ARM64 架构的安装包
-wget 
https://doris-thirdparty-repo.bj.bcebos.com/thirdparty/node-v16.3.0-linux-arm64.tar.xz
 && tar -xvf node-v16.3.0-linux-arm64.tar.xz && \
-mv node-v16.3.0-linux-arm64 /opt/software/nodejs
+  - NodeJS
 
-### LDB-Toolchain ###
-cd /opt/tools
-# 下载 LDB-Toolchain ARM 版本
-wget 
https://github.com/amosbird/ldb_toolchain_gen/releases/download/v0.9.1/ldb_toolchain_gen.aarch64.sh
 && sh ldb_toolchain_gen.aarch64.sh /opt/software/ldb_toolchain/
+```shell
+  cd /opt/tools
+  # 下载 arm64 架构的安装包
+  wget 
https://doris-thirdparty-repo.bj.bcebos.com/thirdparty/node-v16.3.0-linux-arm64.tar.xz
 && \
+    tar -xvf node-v16.3.0-linux-arm64.tar.xz && \
+    mv node-v16.3.0-linux-arm64 /opt/software/nodejs
+```
 
-### 其他 ###
-# install required system packages
-sudo apt install -y build-essential cmake flex automake bison binutils-dev 
libiberty-dev zip libncurses5-dev curl ninja-build
-sudo apt-get install -y make
-sudo apt-get install -y unzip
-sudo apt-get install -y python2
-sudo apt-get install -y byacc
-sudo apt-get install -y automake
-sudo apt-get install -y libtool
-sudo apt-get install -y bzip2
-sudo add-apt-repository ppa:ubuntu-toolchain-r/ppa 
-sudo apt update
-sudo apt install gcc-11 g++-11 
-sudo apt-get -y install autoconf autopoint
+  - LDB-Toolchain
 
-# install autoconf-2.69
-cd /opt/tools
-wget http://ftp.gnu.org/gnu/autoconf/autoconf-2.69.tar.gz && \
-    tar zxf autoconf-2.69.tar.gz && \
-    mv autoconf-2.69 /opt/software/autoconf && \
-    cd /opt/software/autoconf && \
-    ./configure && \
-    make && \
-    make install
+```shell
+  cd /opt/tools
+  # 下载 LDB-Toolchain ARM 版本
+  wget 
https://github.com/amosbird/ldb_toolchain_gen/releases/download/v0.9.1/ldb_toolchain_gen.aarch64.sh
 && \
+    sh ldb_toolchain_gen.aarch64.sh /opt/software/ldb_toolchain/
 ```
+  </p>
+    <p>
 
-**5.  配置环境变量**
+5. 配置环境变量
 
 ```shell
 # 配置环境变量
@@ -251,150 +313,334 @@ node --version
 gcc --version
 > gcc-11
 ```
+  </p>
+    <p>
+
+6. 安装其他额外环境和组件
+
+```shell
+# Install required system packages
+sudo apt install -y build-essential cmake flex automake bison binutils-dev 
libiberty-dev zip libncurses5-dev curl ninja-build
+sudo apt-get install -y make
+sudo apt-get install -y unzip
+sudo apt-get install -y python2
+sudo apt-get install -y byacc
+sudo apt-get install -y automake
+sudo apt-get install -y libtool
+sudo apt-get install -y bzip2
+sudo add-apt-repository ppa:ubuntu-toolchain-r/ppa
+sudo apt update
+sudo apt install gcc-11 g++-11
+sudo apt-get -y install autoconf autopoint
+
+# Install autoconf-2.69
+cd /opt/tools
+wget http://ftp.gnu.org/gnu/autoconf/autoconf-2.69.tar.gz && \
+    tar zxf autoconf-2.69.tar.gz && \
+    mv autoconf-2.69 /opt/software/autoconf && \
+    cd /opt/software/autoconf && \
+    ./configure && \
+    make && \
+    make install
+```
+  </p>
+  </TabItem>
+</Tabs>
 
 ## 编译
 
-目前 ARM 环境仅推荐使用 LDB Toolchain 进行编译。
+:::tip
+目前 ARM 环境仅推荐使用 ldb-toolchain 进行编译,该方法适用于 [commit 
7f3564](https://github.com/apache/doris/commit/7f3564cca62de49c9f2ea67fcf735921dbebb4d1)
 之后的 Doris 版本。
+:::
+
+下载 
[ldb\_toolchain\_gen.aarch64.sh](https://github.com/amosbird/ldb_toolchain_gen/releases/download/v0.9.1/ldb_toolchain_gen.aarch64.sh)
 
-在 ARM 平台编译 Doris 时,请关闭 AVX2 和 LIBUNWIND 三方库:
+之后的编译方式参阅 [使用 LDB toolchain 编译](./compilation-with-ldb-toolchain)
+
+其中,jdk 和 nodejs 替换为对应的 aarch64 版本:
+
+1. 
[Java8-aarch64](https://doris-thirdparty-repo.bj.bcebos.com/thirdparty/jdk-8u291-linux-aarch64.tar.gz)
+2. [Node 
v16.3.0-aarch64](https://doris-thirdparty-repo.bj.bcebos.com/thirdparty/node-v16.3.0-linux-arm64.tar.xz)
+
+如下载预编译的三方库遇到问题,请使用`tools/build_thirdparty.sh`自行编译。在编译三方库时,请使用 gcc:
+```shell
+export DORIS_TOOLCHAIN=gcc
+```
 
+在 ARM 平台编译 Doris 时,**请关闭 AVX2 和 LIBUNWIND 三方库**:
 ```shell
 export USE_AVX2=OFF
 export USE_UNWIND=OFF
 ```
 
-然后参考 使用 LDB Toolchain 编译文档,进行编译。
+如在编译、启动时仍遇到问题,请查阅[常见问题](#常见问题)。如果没有相关解决方案,欢迎[提出issue](https://github.com/apache/doris/issues)。
 
 ## 常见问题
 
-**1.  编译第三方库 libhdfs3.a,找不到文件夹**
+### 编译问题
 
-在执行编译安装过程中,出现了如下报错 `not found lib/libhdfs3.a file or directory`。
+1. 编译第三方库 libhdfs3.a ,找不到文件夹
 
-问题原因:第三方库的依赖下载有问题。
+   - 问题描述
 
-解决方案:使用第三方库下载仓库    
+     在执行编译安装过程中,出现了如下报错
+
+     > not found lib/libhdfs3.a file or directory
+
+   - 问题原因
+
+     第三方库的依赖下载有问题
+
+   - 解决方案
+
+     - 使用第三方下载仓库
 
 ```shell
-export REPOSITORY_URL=https://doris-thirdparty-repo.bj.bcebos.com/thirdparty
-sh /opt/doris/thirdparty/build-thirdparty.sh
+  export REPOSITORY_URL=https://doris-thirdparty-repo.bj.bcebos.com/thirdparty
+  sh /opt/doris/thirdparty/build-thirdparty.sh
 ```
 
-REPOSITORY_URL 中包含所有第三方库源码包和他们的历史版本。
+  REPOSITORY_URL 中包含所有第三方库源码包和他们的历史版本。
 
-**2.  Python 命令未找到**
+2. python 命令未找到
 
-执行 build.sh 时抛出异常:
+   - 问题描述
 
-```
-/opt/doris/env.sh: line 46: python: command not found
-```
+     - 执行 build.sh 时抛出异常
+
+       > /opt/doris/env.sh: line 46: python: command not found
+       >
+       > Python 2.7.18
+
+   - 问题原因
 
-问题可能原因:系统默认使用 `python2.7`、 `python3.6`、`python2`、`python3` 这几个命令来执行 python 
命令,Doris 安装依赖需要 python 2.7+ 版本即可,故只需要添加名为 `python` 的命令连接即可,使用版本 2 和版本 3 的都可以。
+     经查找,发现该系统默认使用 `python2.7`、 `python3.6`、`python2`、`python3` 这几个命令来执行 
python 命令,Doris安装依赖需要 python 2.7+ 版本即可,故只需要添加名为 `python` 的命令连接即可,使用版本2和版本3的都可以
 
-解决方案:建立 `\usr\bin` 中 `python` 命令的软连接,比如:
+   - 解决方案
 
-```Shell
-sudo ln -s /usr/bin/python2.7 /usr/bin/python
+     建立 `\usr\bin` 中 `python` 命令的软连接
+
+```shell
+      # 查看python安装目录
+      whereis python
+      # 建立软连接
+      sudo ln -s /usr/bin/python2.7 /usr/bin/python
 ```
 
-**3.  编译结束后没有 output 目录**
+3. 编译结束后没有 output 目录
 
-build.sh 执行结束后,目录中未发现 output 文件夹。
+   - 问题描述
 
-问题原因:未成功编译,需重新编译。
+     - build.sh 执行结束后,目录中未发现 output 文件夹.
 
-解决方案如下:
+   - 问题原因
 
-```Shell
-sh build.sh --clean
+     未成功编译,需重新编译
+
+   - 解决方案
+
+```shell
+      sh build.sh --clean
 ```
 
-**4.  剩余空间不足,编译失败**
+4. spark-dpp 编译失败
+
+   - 问题描述
+
+     - 执行 build.sh 编译以后,编译至 Spark-DPP 报错失败
+
+       > Failed to execute goal on project spark-dpp
+
+   - 问题原因
+
+     最后的错误提示,是由于下载失败(且由于是未能连接到 repo.maven.apache.org 中央仓库)的问题
+
+     > Could not transfer artifact org.apache.spark:spark-sql_2.12:jar:2.4.6 
from/to central (https://repo.maven.apache.org/maven2): Transfer failed for 
https://repo.maven.apache.org/maven2/org/apache/spark/spark-sql_2.12/2.4.6/spark-sql_2.12-2.4.6.jar:
 Unknown host repo.maven.apache.org
+
+   - 解决方案
+
+     - 重新 build
 
-编译过程中报“构建 CXX 对象失败,提示剩余空间不足”。
+5. 剩余空间不足,编译失败
 
-`fatal error: error writing to /tmp/ccKn4nPK.s: No space left on device 1112 | 
} // namespace doris::vectorized compilation terminated.`
+   - 问题描述
 
-解决方案:扩大设备剩余空间,如删除不需要的文件等。
+     - 编译过程中报 构建 CXX 对象失败,提示剩余空间不足
 
-**5. 在 pkg.config 中找不到 pkg.m4 文件**
+       >  fatal error: error writing to /tmp/ccKn4nPK.s: No space left on 
device
+       >
+       >  1112 | } // namespace doris::vectorized
+       >
+       >  compilation terminated.
 
-编译过程中出现了找不到文件错误,报错如下:
+   - 问题原因
 
-`Couldn't find pkg.m4 from pkg-config. Install the appropriate package for 
your distribution or set ACLOCAL_PATH to the directory containing pkg.m4.`
+     设备剩余空间不足
 
-通过查找上面的日志,发现是 `libxml2` 这个三方库在编译的时候出现了问题。
+   - 解决方案
 
-问题原因:`libxml2` 三方库编译错误,找不到 pkg.m4 文件。很有可能是:
+     扩大设备剩余空间,如删除不需要的文件等
 
-- Ubuntu 系统加载环境变量时有异常,导致 ldb 目录下的索引未被成功加载;
+6. 在 pkg.config 中找不到 pkg.m4 文件
 
-- 在 libxml2 编译时检索环境变量失效,导致编译过程没有检索到 ldb/aclocal 目录。
+   - 问题描述
 
-解决方案是:将 ldb/aclocal 目录下的 `pkg.m4` 文件拷贝至 libxml2/m4 目录下,重新编译第三方库
+     - 编译过程中出现了找不到文件错误,报错如下
 
-```Shell
- cp /opt/software/ldb_toolchain/share/aclocal/pkg.m4 
/opt/doris/thirdparty/src/libxml2-v2.9.10/m4
- sh /opt/doris/thirdparty/build-thirdparty.sh
+       > Couldn't find pkg.m4 from pkg-config. Install the appropriate package 
for your distribution or set ACLOCAL_PATH to the directory containing pkg.m4.
+
+     - 通过查找上面的日志,发现是 `libxml2` 这个三方库在编译的时候出现了问题
+
+   - 问题原因
+
+     `libxml2` 三方库编译错误,找不到 pkg.m4 文件
+
+     ***可能的错误:***
+
+     1. Ubuntu 系统加载环境变量时有异常,导致 ldb 目录下的索引未被成功加载
+     2. 在 libxml2 编译时检索环境变量失效,导致编译过程没有检索到 ldb/aclocal 目录
+
+   - 解决方案
+
+     将 ldb/aclocal 目录下的 `pkg.m4` 文件拷贝至 libxml2/m4 目录下,重新编译第三方库
+
+```shell
+      cp /opt/software/ldb_toolchain/share/aclocal/pkg.m4 
/opt/doris/thirdparty/src/libxml2-v2.9.10/m4
+      sh /opt/doris/thirdparty/build-thirdparty.sh
 ```
 
-**6. 执行测试 CURL_HAS_TLS_PROXY 失败**
+7. 执行测试 CURL_HAS_TLS_PROXY 失败
+
+   - 问题描述
+
+     - 三方包编译过程报错,错误如下
 
-三方包编译过程报错,错误如下:
+       > -- Performing Test CURL_HAS_TLS_PROXY - Failed
+       >
+       > CMake Error at cmake/dependencies.cmake:15 (get_property):
+       >
+       > INTERFACE_LIBRARY targets may only have whitelisted properties. The 
property "LINK_LIBRARIES_ALL" is not allowed.
 
-`-- Performing Test CURL_HAS_TLS_PROXY - Failed CMake Error at 
cmake/dependencies.cmake:15 (get_property): INTERFACE_LIBRARY targets may only 
have whitelisted properties. The property "LINK_LIBRARIES_ALL" is not allowed.`
+     - 查看日志以后,发现内部是由于 curl `No such file or directory`
 
-查看日志以后,发现内部是由于 curl `No such file or directory`
+       > fatal error: curl/curl.h: No such file or directory
+       >
+       >  2 |     #include <curl/curl.h>
+       >
+       > compilation terminated.
+       >
+       > ninja: build stopped: subcommand failed.
 
-`fa``tal error: curl/curl.h: No such file or directory 2 | #include 
<curl/curl.h> compilation terminated. ninja: build stopped: subcommand failed.`
+   - 问题原因
 
-问题原因:编译环境有错误,查看 gcc 版本后发现是系统自带的 9.3.0 版本,故而没有走 ldb 编译,需设置 ldb 环境变量。
+     编译环境有错误,查看 gcc 版本后发现是系统自带的 9.3.0 版本,故而没有走 ldb 编译,需设置 ldb 环境变量
 
-解决方案:配置 ldb 环境变量:
+   - 解决方案
 
-```Shell
- # 配置环境变量
- vim /etc/profile.d/ldb.sh
- export LDB_HOME=/opt/software/ldb_toolchain
- export PATH=$LDB_HOME/bin:$PATH
- # 保存退出并刷新环境变量
- source /etc/profile.d/ldb.sh
- # 测试
- gcc --version
- # 显示 gcc-11
+     配置 ldb 环境变量
+
+```shell
+      # 配置环境变量
+      vim /etc/profile.d/ldb.sh
+      export LDB_HOME=/opt/software/ldb_toolchain
+      export PATH=$LDB_HOME/bin:$PATH
+      # 保存退出并刷新环境变量
+      source /etc/profile.d/ldb.sh
+      # 测试
+      gcc --version
+      > gcc-11
 ```
 
-**7. 其他组件问题**
+8. 编译过程中止,提示 "ninja failed with: signal: killed" 相关字样
+
+   - 问题描述
+
+     BE 或三方库在编译中途失败,提示字样包含
+
+     > ninja failed with: signal: killed
+
+   - 问题原因
+
+     所在机器内存不足
+
+   - 解决方案
+
+     换用更大内存(至少16GB)的机器进行编译,或者减小编译并发(`-j`)
+
+### 启动问题
+
+1. 启动FE失败,事务-20 问题
 
-如有以下组件的错误提示,则统一以该方案解决:
+   - 问题描述
 
--   bison 相关:安装 bison-3.0.4 时报 fseterr.c 错误
+     在启动 FE 时,报事务错误 20 问题,状态为 UNKNOWN
 
--   flex 相关:flex 命令未找到
+     > [BDBEnvironment.setup():198] error to open replicated environment. will 
exit.
+     >
+     > com.sleepycat.je.rep.ReplicaWriteException: (JE 18.3.12) Problem 
closing transaction 20. The current state is:UNKNOWN. The node transitioned to 
this state at:Fri Apr 22 12:48:08 CST 2022
 
--   cmake 相关
+   - 问题原因
 
-    -   cmake 命令未找到
+     硬盘空间不足,需更多空间
 
-    -   cmake 找不到依赖库
+   - 解决方案
 
-    -   cmake 找不到 CMAKE_ROOT
+     释放硬盘空间或者挂载新硬盘
 
-    -   cmake 环境变量 CXX 中找不到编译器集
+2. BDB 环境设置异常,磁盘寻找错误
+
+   - 问题描述
+     在迁移 FE 所在的盘符后启动 FE 报异常
+     > 2022-04-22 16:21:44,092 ERROR (MASTER 
172.28.7.231_9010_1650606822109(-1)|1) [BDBJEJournal.open():306] catch an 
exception when setup bdb environment. will exit.
+     >
+     > com.sleepycat.je.DiskLimitException: (JE 18.3.12) Disk usage is not 
within je.maxDisk or je.freeDisk limits and write operations are prohibited: 
maxDiskLimit=0 freeDiskLimit=5,368,709,120 adjustedMaxDiskLimit=0 
maxDiskOverage=0 freeDiskShortage=1,536,552,960 diskFreeSpace=3,832,156,160 
availableLogSize=-1,536,552,960 totalLogSize=4,665 activeLogSize=4,665 
reservedLogSize=0 protectedLogSize=0 protectedLogSizeMap={}
+
+   - 问题原因
+
+     迁移了 FE 所在的位置,元数据存储的硬盘信息无法匹配到,或者该硬盘损坏或未挂载
+
+   - 解决方案
+
+     - 检查硬盘是否正常,是否初始化并正确挂载
+     - 修复 FE 元数据
+     - 若为测试机器,则可以删除元数据目录重新启动
+
+3. BE启动时 coredump,core 栈中可见 `libc.so` 或 `glibc-compatibility/` 字样
+
+    - 问题原因
+      当前机器 glibc 版本过低。可以通过 `ldd --version` 确认,如果版本小于 2.27 则可能发生这一问题。
+
+    - 解决方案
+      重新编译 BE,编译时增加环境变量:
+```shell
+      export GLIBC_COMPATIBILITY=OFF
+```
 
--   boost 相关:Boost.Build 构建引擎失败
+### 其他组件问题
 
--   mysql 相关:找不到 mysql 的客户端依赖 a 文件
+- 问题描述
 
--   gcc 相关:GCC 版本需要 11+
+  如有以下组件的错误提示,则统一以该方案解决:
+  - bison 相关
+    1. 安装 bison-3.0.4 时报 fseterr.c 错误
+  - flex 相关
+    1. flex 命令未找到
+  - cmake 相关
+    1. cmake 命令未找到
+    2. cmake 找不到依赖库
+    3. cmake 找不到 CMAKE_ROOT
+    4. cmake 环境变量 CXX 中找不到编译器集
+  - boost 相关:Boost.Build 构建引擎失败
+  - mysql 相关:找不到 mysql 的客户端依赖 a 文件
+  - gcc 相关:GCC 版本需要11+
 
-问题原因:都是未使用正确的 ldb-toolchain 进行编译。
+- 问题原因
 
-解决方案如下:
+  未使用正确的 ldb-toolchain 进行编译
 
--   检查 ldb-toolchain 环境变量是否配置
+- 解决方案
 
--   查看 gcc 版本是否与[使用 LDB-Toolchain 
编译](../../install/source-install/compilation-with-ldb-toolchain)文档中推荐一致
+  - 检查 ldb-toolchain 环境变量是否配置
+  - 查看 gcc 版本是否与[使用 LDB-Toolchain 编译](./compilation-with-ldb-toolchain)文档中推荐一致
+  - 删除 `ldb_toolchain_gen.aarch64.sh` 脚本执行后的 ldb 目录,重新执行并配置环境变量,验证 gcc 版本
 
--   删除 `ldb_toolchain_gen.aarch64.sh` 脚本执行后的 ldb 目录,重新执行并配置环境变量,验证 gcc 版本


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to