This is an automated email from the ASF dual-hosted git repository. yiguolei 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 efbcdb56265 update toolchain maven and java version of source install english doc… (#2351) efbcdb56265 is described below commit efbcdb56265775b63b9b74a20c970c54220714e3 Author: Wen Zhenghu <wenzhenghu....@gmail.com> AuthorDate: Thu May 8 10:38:12 2025 +0800 update toolchain maven and java version of source install english doc… (#2351) …s. chinese version is https://github.com/apache/doris-website/pull/2296 ## Versions - [x] dev - [x] 3.0 - [x] 2.1 - [ ] 2.0 --- community/source-install/compilation-arm.mdx | 56 ++++++++++++++-------- community/source-install/compilation-linux.md | 14 +++++- .../source-install/compilation-with-docker.md | 3 +- .../compilation-with-ldb-toolchain.md | 9 ++-- .../trouble-shooting/memory-management/overview.md | 2 +- .../trouble-shooting/memory-management/overview.md | 2 +- .../trouble-shooting/memory-management/overview.md | 2 +- .../trouble-shooting/memory-management/overview.md | 2 +- 8 files changed, 59 insertions(+), 31 deletions(-) diff --git a/community/source-install/compilation-arm.mdx b/community/source-install/compilation-arm.mdx index 24c5d6f3437..4677be3490b 100644 --- a/community/source-install/compilation-arm.mdx +++ b/community/source-install/compilation-arm.mdx @@ -68,7 +68,7 @@ Codename: AltArch ## Software Environment -### Software Environment List +### Software Environment List (Taking JDK8 as an example) | Component Name | Component Version | | ------------------------------------------------------------ | ------------------------------ | @@ -110,6 +110,7 @@ mkdir /opt/software - JDK8 (2 methods) ```shell + # Oracle JDK 8 or OpenJDK 8 for Doris 2.1 and earlier versions # 1. yum install, which can avoid additional download and configuration. Installing the devel package is to get tools such as the jps command. yum install -y java-1.8.0-openjdk java-1.8.0-openjdk-devel @@ -120,14 +121,21 @@ mkdir /opt/software mv jdk1.8.0_291 /opt/software/jdk8 ``` +- JDK17 + +```shell + # For versions later than 3.0 (inclusive), or the master branch, please use JDK 17 + yum install -y java-17-openjdk java-17-openjdk-devel +``` + - Maven ```shell cd /opt/tools # Download the wget tool, decompress it, and configure the environment variables. - 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 + wget https://dlcdn.apache.org/maven/maven-3/3.9.9/binaries/apache-maven-3.9.9-bin.tar.gz && \ + tar -zxvf apache-maven-3.9.9-bin.tar.gz && \ + mv apache-maven-3.9.9 /opt/software/maven ``` - NodeJS @@ -145,13 +153,13 @@ mkdir /opt/software ```shell cd /opt/tools # Download LDB-Toolchain ARM version - wget https://github.com/amosbird/ldb_toolchain_gen/releases/download/v0.9.1/ldb_toolchain_gen.aarch64.sh && \ + wget https://github.com/amosbird/ldb_toolchain_gen/releases/download/v0.21/ldb_toolchain_gen.aarch64.sh && \ sh ldb_toolchain_gen.aarch64.sh /opt/software/ldb_toolchain/ ``` </div> <div> -3. Configure environment variables +3. Configure environment variables (Taking JDK8 as an example) ```shell # Configure environment variables @@ -165,11 +173,11 @@ export PATH=$JAVA_HOME/bin:$MAVEN_HOME/bin:$NODE_JS_HOME/bin:$LDB_HOME/bin:$PATH # Save, exit, and refresh environment variables source /etc/profile.d/doris.sh -# Test +# Test (Taking JDK8 as an example) java -version > java version "1.8.0_291" mvn -version -> Apache Maven 3.6.3 +> Apache Maven 3.9.9 node --version > v16.3.0 gcc --version @@ -254,14 +262,21 @@ sudo dpkg-reconfigure dash mv jdk1.8.0_291 /opt/software/jdk8 ``` +- JDK17 + +```shell + # For versions later than 3.0 (inclusive), or the master branch, please use JDK 17 + apt-get -y install openjdk-17-jdk +``` + - Maven ```shell cd /opt/tools # Download the wget tool, decompress it, and configure the environment variables. - 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 + wget https://dlcdn.apache.org/maven/maven-3/3.9.9/binaries/apache-maven-3.9.9-bin.tar.gz && \ + tar -zxvf apache-maven-3.9.9-bin.tar.gz && \ + mv apache-maven-3.9.9 /opt/software/maven ``` - NodeJS @@ -279,7 +294,7 @@ sudo dpkg-reconfigure dash ```shell cd /opt/tools # Download ldb-toolchain ARM version - wget https://github.com/amosbird/ldb_toolchain_gen/releases/download/v0.9.1/ldb_toolchain_gen.aarch64.sh && \ + wget https://github.com/amosbird/ldb_toolchain_gen/releases/download/v0.21/ldb_toolchain_gen.aarch64.sh && \ sh ldb_toolchain_gen.aarch64.sh /opt/software/ldb_toolchain/ ``` </div> @@ -288,7 +303,7 @@ sudo dpkg-reconfigure dash 5. Configure environment variables ```shell -# Configure environment variables +# Configure environment variables (Taking JDK8 as an example) vim /etc/profile.d/doris.sh export JAVA_HOME=/opt/software/jdk8 export MAVEN_HOME=/opt/software/maven @@ -299,11 +314,11 @@ export PATH=$JAVA_HOME/bin:$MAVEN_HOME/bin:$NODE_JS_HOME/bin:$LDB_HOME/bin:$PATH # Save, exit, and refresh environment variables source /etc/profile.d/doris.sh -# Test +# Test (Taking JDK8 as an example) java -version > java version "1.8.0_291" mvn -version -> Apache Maven 3.6.3 +> Apache Maven 3.9.9 node --version > v16.3.0 gcc --version @@ -324,6 +339,7 @@ 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 apt-get install -y software-properties-common sudo add-apt-repository ppa:ubuntu-toolchain-r/ppa sudo apt update sudo apt install gcc-11 g++-11 @@ -349,24 +365,22 @@ wget http://ftp.gnu.org/gnu/autoconf/autoconf-2.69.tar.gz && \ Currently the only recommended method for ARM environments is to compile with ldb-toolchain, which works for [commit 7f3564](https://github.com/apache/doris/commit/7f3564cca62de49c9f2ea67fcf735921dbebb4d1) for Doris releases after that. ::: -Download [ldb\_toolchain\_gen.aarch64.sh](https://github.com/amosbird/ldb_toolchain_gen/releases/download/v0.9.1/ldb_toolchain_gen.aarch64.sh) +For more detailed instructions about LDB toolchain download and install, please refer to the earlier section of this document. See [Compilation with LDB toolchain](./compilation-with-ldb-toolchain) for the steps then. -The jdk and nodejs should be replaced with the corresponding aarch64 versions: - -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) +The jdk and nodejs should be replaced with the corresponding aarch64 versions, which has introduced the earlier section of this document. If you have problems compiling with the downloaded precompiled third-party libraries, please use `tools/build_thirdparty.sh` to compile them by yourself. When compiling the thirdparty library, use gcc: ```shell export DORIS_TOOLCHAIN=gcc ``` -When compiling Doris on ARM platforms, **please disable AVX2 and LIBUNWIND tripartite libraries**: +When compiling Doris on ARM platforms, **please disable AVX2, LIBUNWIND and AZURE tripartite libraries**: ```shell export USE_AVX2=OFF export USE_UNWIND=OFF +export DISABLE_BUILD_AZURE=ON ``` If you still encounter problems when compiling or starting, please consult the [FAQ](#faq). If there is no relevant solution, feel free to [raise an issue](https://github.com/apache/doris/issues). diff --git a/community/source-install/compilation-linux.md b/community/source-install/compilation-linux.md index f328ca37dcd..abb4af6b657 100644 --- a/community/source-install/compilation-linux.md +++ b/community/source-install/compilation-linux.md @@ -26,12 +26,22 @@ under the License. This guide is about how to compile Doris on Linux using Ubuntu 16.04 or later versions. +## Install JDK. + +```Plain +# Oracle JDK 8 or OpenJDK 8 for Doris 2.1 and earlier versions +sudo apt install openjdk-8-jdk +# For versions later than 3.0 (inclusive), or the master branch, please use JDK 17 +sudo apt install openjdk-17-jdk +``` + ## Make sure you have the following system dependencies installed. -GCC 10+, Oracle JDK 8+, Python 2.7+, Apache Maven 3.5+, CMake 3.19.2+, Bison 3.0+ +GCC 10+, Python 2.7+, Apache Maven 3.5+, CMake 3.19.2+, Bison 3.0+ ```Plain -sudo apt install build-essential openjdk-8-jdk maven cmake byacc flex automake libtool-bin bison binutils-dev libiberty-dev zip unzip libncurses5-dev curl git ninja-build python +sudo apt install build-essential maven cmake byacc flex automake libtool-bin bison binutils-dev libiberty-dev zip unzip libncurses5-dev curl git ninja-build python +sudo apt-get install -y software-properties-common sudo add-apt-repository ppa:ubuntu-toolchain-r/ppa sudo apt update sudo apt install gcc-10 g++-10 diff --git a/community/source-install/compilation-with-docker.md b/community/source-install/compilation-with-docker.md index 8f4b1617a49..6dd6b52aa2f 100644 --- a/community/source-install/compilation-with-docker.md +++ b/community/source-install/compilation-with-docker.md @@ -70,7 +70,8 @@ apache/doris build-env-for-2.0 f29cf1979dba 3 days ago 3.3GB **Note:** - Download the right image version for the Doris version that you're working with. The image version number is aligned with the Doris version number. For example, you should use "apache/doris:build-env-for-2.0" to compile Doris 2.0. -- `apache/doris:build-env-ldb-toolchain-latest` is used for compiling the latest master code and is updated along with the master. You can check the update time in the `docker/README.md` file. +- `apache/doris:build-env-ldb-toolchain-latest` (Currently, only for x64 architecture) is used for compiling the latest master code and is updated along with the master. You can check the update time in the `docker/README.md` file. +- To perform Docker compilation on an ARM64 architecture, you need to download a Linux image that supports ARM64 (e.g., apache/doris:base-latest, which corresponds to Ubuntu 22.04.5 LTS). Then, refer to the compilation documentation for Linux and ARM platforms to download and install the required dependency packages before proceeding with the build. - Images with "no-avx2" in their names contain third-party libraries that can run on CPUs that do not support AVX2 instructions. Using these images, you can compile Doris with the "USE_AVX2=0". - For information about changes in the compilation image, please see [ChangeLog](https://github.com/apache/doris/blob/master/thirdparty/CHANGELOG.md). - The Docker compilation image includes both JDK 8 and JDK 17. You can check the default JDK version by running `java -version`, and switch between versions using the following commands. For versions earlier than 2.1 (inclusive), please use JDK 8. For versions later than 3.0 (inclusive) or the master branch, please use JDK 17. diff --git a/community/source-install/compilation-with-ldb-toolchain.md b/community/source-install/compilation-with-ldb-toolchain.md index 9997ee7e064..792ff430505 100644 --- a/community/source-install/compilation-with-ldb-toolchain.md +++ b/community/source-install/compilation-with-ldb-toolchain.md @@ -38,7 +38,7 @@ This method applies to most Linux distributions (CentOS, Ubuntu, etc.). 1. **Download** **`ldb_toolchain_gen.sh`** -Download the latest `ldb_toolchain_gen.sh` from [here](https://github.com/amosbird/ldb_toolchain_gen/releases). This script is used to generate ldb toolchain. +Download the latest `ldb_toolchain_gen.sh` from [here](https://github.com/amosbird/ldb_toolchain_gen/releases), For ARM architecture, you need to download the latest ldb_toolchain_gen.aarch64.sh. This script is used to generate ldb toolchain. :::tip For more information, please visit <https://github.com/amosbird/ldb_toolchain_gen> @@ -63,11 +63,14 @@ sh ldb_toolchain_gen.sh /path/to/ldb_toolchain/ 3. **Download and install other compilation components** -- Download [Java8](https://doris-thirdparty-1308700295.cos.ap-beijing.myqcloud.com/tools/jdk-8u391-linux-x64.tar.gz) and install it to /path/to/java. +- Download [Java8](https://doris-thirdparty-1308700295.cos.ap-beijing.myqcloud.com/tools/jdk-8u391-linux-x64.tar.gz) for Doris 2.1 and earlier versions and install it to /path/to/java. > For versions later than 3.0 (inclusive), or the master branch, please use [Java 17](https://download.oracle.com/java/17/archive/jdk-17.0.10_linux-x64_bin.tar.gz). -- Download [Apache Maven 3.6.3](https://doris-thirdparty-repo.bj.bcebos.com/thirdparty/apache-maven-3.6.3-bin.tar.gz) and install it to /path/to/maven. + > It is recommended to install Java 8 or Java 17 using the package management tools provided by your Linux distribution, such as yum(java-1.8.0/17-openjdk-devel) or apt(openjdk-8/17-jdk). and verify with java -version + + +- Download [Apache Maven 3.9.9](https://dlcdn.apache.org/maven/maven-3/3.9.9/binaries/apache-maven-3.9.9-bin.tar.gz) and install it to /path/to/maven. - Download [Node v12.13.0](https://doris-thirdparty-repo.bj.bcebos.com/thirdparty/node-v12.13.0-linux-x64.tar.gz) and install it to /path/to/node. - Different Linux distributions may include different default components. Therefore, you may need to install some additional components. The following takes CentOS 6 as an example. Similar steps may apply to other distributions: diff --git a/i18n/zh-CN/docusaurus-plugin-content-docs/version-2.1/admin-manual/trouble-shooting/memory-management/overview.md b/i18n/zh-CN/docusaurus-plugin-content-docs/version-2.1/admin-manual/trouble-shooting/memory-management/overview.md index f1146b95805..202524d32ff 100644 --- a/i18n/zh-CN/docusaurus-plugin-content-docs/version-2.1/admin-manual/trouble-shooting/memory-management/overview.md +++ b/i18n/zh-CN/docusaurus-plugin-content-docs/version-2.1/admin-manual/trouble-shooting/memory-management/overview.md @@ -80,7 +80,7 @@ Doris BE 使用内存跟踪器(Memory Tracker)记录进程内存使用,支  -Memory Tracker 分为不同的类型,其中 `type=overview` 的 Memory Tracker 中除 `process resident memory`、`process virtual memory`、`sum of all trackers` 外,其他 `type=overview` 的 Memory Tracker 都可以通过 `http://{be_host}:{be_web_server_port}/mem_tracker?type=Lable` 查看详情。 +Memory Tracker 分为不同的类型,其中 `type=overview` 的 Memory Tracker 中除 `process resident memory`、`process virtual memory`、`sum of all trackers` 外,其他 `type=overview` 的 Memory Tracker 都可以通过 `http://{be_host}:{be_web_server_port}/mem_tracker?type=Label` 查看详情。 Memory Tracker 拥有如下的属性: diff --git a/i18n/zh-CN/docusaurus-plugin-content-docs/version-3.0/admin-manual/trouble-shooting/memory-management/overview.md b/i18n/zh-CN/docusaurus-plugin-content-docs/version-3.0/admin-manual/trouble-shooting/memory-management/overview.md index f1146b95805..202524d32ff 100644 --- a/i18n/zh-CN/docusaurus-plugin-content-docs/version-3.0/admin-manual/trouble-shooting/memory-management/overview.md +++ b/i18n/zh-CN/docusaurus-plugin-content-docs/version-3.0/admin-manual/trouble-shooting/memory-management/overview.md @@ -80,7 +80,7 @@ Doris BE 使用内存跟踪器(Memory Tracker)记录进程内存使用,支  -Memory Tracker 分为不同的类型,其中 `type=overview` 的 Memory Tracker 中除 `process resident memory`、`process virtual memory`、`sum of all trackers` 外,其他 `type=overview` 的 Memory Tracker 都可以通过 `http://{be_host}:{be_web_server_port}/mem_tracker?type=Lable` 查看详情。 +Memory Tracker 分为不同的类型,其中 `type=overview` 的 Memory Tracker 中除 `process resident memory`、`process virtual memory`、`sum of all trackers` 外,其他 `type=overview` 的 Memory Tracker 都可以通过 `http://{be_host}:{be_web_server_port}/mem_tracker?type=Label` 查看详情。 Memory Tracker 拥有如下的属性: diff --git a/versioned_docs/version-2.1/admin-manual/trouble-shooting/memory-management/overview.md b/versioned_docs/version-2.1/admin-manual/trouble-shooting/memory-management/overview.md index 7a65b95c6f0..b28ed075943 100644 --- a/versioned_docs/version-2.1/admin-manual/trouble-shooting/memory-management/overview.md +++ b/versioned_docs/version-2.1/admin-manual/trouble-shooting/memory-management/overview.md @@ -80,7 +80,7 @@ Real-time memory statistics can be viewed through Doris BE's Web page `http://{b  -Memory Tracker is divided into different types. Among the Memory Tracker of type=overview, except for `process resident memory`, `process virtual memory`, and `sum of all trackers`, the details of other Memory Trackers of type=overview can be viewed through `http://{be_host}:{be_web_server_port}/mem_tracker?type=Lable`. +Memory Tracker is divided into different types. Among the Memory Tracker of type=overview, except for `process resident memory`, `process virtual memory`, and `sum of all trackers`, the details of other Memory Trackers of type=overview can be viewed through `http://{be_host}:{be_web_server_port}/mem_tracker?type=Label`. Memory Tracker has the following properties: diff --git a/versioned_docs/version-3.0/admin-manual/trouble-shooting/memory-management/overview.md b/versioned_docs/version-3.0/admin-manual/trouble-shooting/memory-management/overview.md index 7a65b95c6f0..b28ed075943 100644 --- a/versioned_docs/version-3.0/admin-manual/trouble-shooting/memory-management/overview.md +++ b/versioned_docs/version-3.0/admin-manual/trouble-shooting/memory-management/overview.md @@ -80,7 +80,7 @@ Real-time memory statistics can be viewed through Doris BE's Web page `http://{b  -Memory Tracker is divided into different types. Among the Memory Tracker of type=overview, except for `process resident memory`, `process virtual memory`, and `sum of all trackers`, the details of other Memory Trackers of type=overview can be viewed through `http://{be_host}:{be_web_server_port}/mem_tracker?type=Lable`. +Memory Tracker is divided into different types. Among the Memory Tracker of type=overview, except for `process resident memory`, `process virtual memory`, and `sum of all trackers`, the details of other Memory Trackers of type=overview can be viewed through `http://{be_host}:{be_web_server_port}/mem_tracker?type=Label`. Memory Tracker has the following properties: --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org For additional commands, e-mail: commits-h...@doris.apache.org