We do not recommend for users to recompile the application. The pre-built binaries should be compatible with your system. Checkout the release page for our latest builds.
The dockerized environment will take care of installing all the dependencies.
Install the required libraries described in the Dockerfile. Once all dependencies are installed, you can run the Build Commands section.
The Dockerfile contains all necessary dependencies to build the project.
Here is a script that mounts the ddprof
folder within the build container.
./tools/launch_local_build.sh
Once inside the container, you can run the Build Commands section.
source setup_env.sh
MkBuildDir Rel
# For a release build
RelCMake ../
make -j 4 .
cppcheck is run with a dedicated build target from within a build folder.
make cppcheck
Clang tidy checks require llvm 17 to be installed. Using the build image will guarantee this.
CXX=clang++-17 CC=clang-17 source ./setup_env.sh
MkBuildDir ClangDeb
DebCMake -DENABLE_CLANG_TIDY=ON ../
Head over to the libdatadog, do your changes and copy the library back to your vendor directory.
cp ${workdir}/libdatadog/headers/include/datadog/common.h ${workdir}/ddprof/vendor_gcc_unknown-linux-2.35_Debug/libdatadog-v2.1.0/include/datadog/common.h
cp ${workdir}/libdatadog/headers/lib/libdatadog_profiling.a ${workdir}/ddprof/vendor_gcc_unknown-linux-2.35_Debug/libdatadog-v2.1.0/lib/