Skip to content
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 32 additions & 2 deletions docs/workflow/requirements/linux-requirements.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,12 +16,42 @@ Install Docker. For further installation instructions, see [here](https://docs.d

## Environment

These instructions are written assuming the current Ubuntu LTS. Pull Requests are welcome to address other environments.
Below are the requirements for toolchain setup, depending on your environment. Pull Requests are welcome to address other environments.

Minimum RAM required to build is 1GB. The build is known to fail on 512 MB VMs ([dotnet/runtime#4069](https://github.com/dotnet/runtime/issues/4069)).

### Toolchain Setup

#### Fedora

These instructions are written assuming Fedora 40.

Install the following packages for the toolchain:

* cmake
* llvm
* lld
* lldb
* clang
* python
* curl
* git
* libicu-devel
* openssl-devel
* krb5-devel
* zlib-devel
* lttng-ust-devel
* ninja-build (optional, enables building native code with ninja instead of make)

```bash
sudo dnf install -y cmake llvm lld lldb clang python curl git libicu-devel openssl-devel \
krb5-devel zlib-devel lttng-ust-devel ninja-build
```

#### Debian-based / Ubuntu

These instructions are written assuming the current Ubuntu LTS.

Install the following packages for the toolchain:

* CMake 3.20 or newer
Expand Down Expand Up @@ -60,7 +90,7 @@ For the _Kitware APT feed_, follow its [instructions here](https://apt.kitware.c

You now have all the required components.

#### Additional Requirements for Cross-Building
##### Additional Requirements for Cross-Building

If you are planning to use your Linux environment to do cross-building for other architectures (e.g. Arm32, Arm64) and/or other operating systems (e.g. Alpine, FreeBSD), you need to install these additional dependencies:

Expand Down