---
metadata:
  - name: generator
    content: Diplodoc Platform v5.52.0
alternate:
  - https://catboost.ai/docs/en/concepts/build-from-source.md
  - href: en/concepts/build-from-source.md
    type: text/markdown
    title: Markdown version
  - href: ../llms.txt
    type: text/markdown
    title: llms.txt
---
> **Documentation Index:** Fetch the complete configuration index at https://catboost.ai/docs/en/llms.txt

# Build from source

<!-- source: en/_includes/work_src/reusage-installation/get-source-code-from-github.md -->
CatBoost source code is stored as a [Git](https://git-scm.com/) repository on GitHub at <https://github.com/catboost/catboost/>. You can obtain a local copy of this Git repository by running the following command from a command line interpreter (you need to have Git command line tools installed):

    git clone https://github.com/catboost/catboost.git
<!-- endsource: en/_includes/work_src/reusage-installation/get-source-code-from-github.md -->

{% note warning %}

<!-- source: en/_includes/work_src/reusage-installation/ya-make-to-cmake-switch.md -->
CatBoost uses [CMake](https://cmake.org/)-based build process since [this commit](https://github.com/catboost/catboost/commit/c5c642ca0b8e093336d0229ac4b14c78db3915bb). Previously `Ya Make` (Yandex's build system) had been used.
<!-- endsource: en/_includes/work_src/reusage-installation/ya-make-to-cmake-switch.md -->

Select the appropriate build method below accordingly.

{% endnote %}

## Build using CMake {#build-cmake}

- [Build environment setup](https://catboost.ai/docs/en/installation/build-environment-setup-for-cmake.md)
- [Build native artifacts](https://catboost.ai/docs/en/installation/build-native-artifacts.md)
- By component:
    - [Build Python package](https://catboost.ai/docs/en/installation/python-installation-method-build-from-source.md)
    - [Build CatBoost for Apache Spark](https://catboost.ai/docs/en/installation/spark-installation-build-from-source-maven.md)
    - Build R package:
        - [Install from GitHub](https://catboost.ai/docs/en/installation/r-installation-github-installation.md)
        - [Install from a local Git repository](https://catboost.ai/docs/en/installation/r-installation-local-copy-installation.md)

    - [Build Command-line binary](https://catboost.ai/docs/en/installation/cli-installation-local-copy-installation.md)

## Build using Ya Make (for previous versions) {#build-ya-make}

- [Build environment setup](https://catboost.ai/docs/en/installation/build-environment-setup-for-ya-make.md)
- By component:
    - Build Python package
        - [In-place build on Linux and macOS](https://catboost.ai/docs/en/installation/python-installation-method-build-from-source-linux-macos-using-ya-make.md)
        - [In-place build on Windows](https://catboost.ai/docs/en/installation/python-installation-method-build-from-source-windows-using-ya-make.md)
        - [Build a wheel using mk_wheel.py](https://catboost.ai/docs/en/installation/python-installation-method-build-a-wheel-package.md#mk-wheel)
    - [Build CatBoost for Apache Spark](https://catboost.ai/docs/en/installation/spark-installation-build-from-source-maven.md)
    - Build R package:
        - [Install from GitHub](https://catboost.ai/docs/en/installation/r-installation-github-installation.md)
        - [Install from a local Git repository](https://catboost.ai/docs/en/installation/r-installation-local-copy-installation.md)

    - [Build Command-line binary](https://catboost.ai/docs/en/installation/cli-installation-local-copy-installation.md)
