Using Clion for Remote Development and Debugging of Apache Doris BE
Downloading and Compiling Code on Remote Server
- Download Doris source code on the remote server, such as in the directory
/mnt/datadisk0/chenqi/doris
.
git clone https://github.com/apache/doris.git
-
Modify the
env.sh
file located in the root directory of the Doris code on the remote server. Add the configuration forDORIS_HOME
at the beginning, for example,DORIS_HOME=/mnt/datadisk0/chenqi/doris.
-
Execute commands to compile the code. The detailed compilation process compilation-with-ldb-toolchain.
cd /mnt/datadisk0/chenqi/doris
./build.sh
Clion Installation and Configuration for Remote Development Environment
-
Download and install Clion on your local env, then import the Doris BE source code.
-
Set up a remote development environment on your local env by navigating to Preferences -> Build, Execution, Deployment -> Deployment in Clion. Add the connection and login information for the remote development server using SFTP and set the Mappings paths. For example, where Local Path is the local path
/User/kaka/Programs/doris/be
and Deployment Path is the remote server path/mnt/datadisk0/chenqi/clion/doris/be
.
- Copy the
gensrc
path on the remote server, for example/mnt/datadisk0/chenqi/doris/gensrc
, to the parent directory of the Deployment Path. For example, the final directory path on the remote server should be/mnt/datadisk0/chenqi/clion/doris/gensrc
.
cp -R /mnt/datadisk0/chenqi/doris/gensrc /mnt/datadisk0/chenqi/clion/doris/gensrc
- In Clion, navigate to Preferences -> Build, Execution, Deployment -> Toolchains and add the necessary remote environment toolchains such as cmake, gcc, g++, gdb, etc. The most important step is to add the path of env.sh on the remote server to Environment file.
-
In Clion, navigate to Preferences -> Build, Execution, Deployment -> CMake and add the compilation option -DDORIS_JAVA_HOME=/path/to/remote/JAVA_HOME in CMake options, set DORIS_JAVA_HOME to the JAVA_HOME path of the remote server, otherwise jni.h will not be found.
-
Right-click on Load Cmake Project in Clion. This will synchronize the code to the remote server and generate the Cmake build files.
Running and debugging Doris BE remotely in Clion
-
Configure CMake in Preferences -> Build, Execution, Deployment -> CMake. Different targets such as Debug / Release can be configured, and the ToolChain should be set to the previously configured. If you want to run and debug Unit Tests, you need to add ·-DMAKE_TEST=ON· to CMake Options (this option is disabled by default, and needs to be enabled to compile the Test code) Copy the output directory in Doris source code to a separate path on the remote server, such as /mnt/datadisk0/chenqi/clion/doris/doris_be/.
-
Copy the output directory in Doris source code to a separate path on the remote server, such as
/mnt/datadisk0/chenqi/clion/doris/doris_be/
.
cp -R /mnt/datadisk0/chenqi/doris/output /mnt/datadisk0/chenqi/clion/doris/doris_be
- Select the relevant Target for doris_be in Clion, such as Debug or Release, and configure the run.
Refer to the environment variables exported in be/bin/start_be.sh
in the Doris root directory for environment variable configuration. The value of each environment variable should point to the corresponding path on the remote server.**
Environment variables reference:
- Click Run to compile and run the BE, or click Debug to compile and debug the BE.