Serenity Operating System
at master 68 lines 2.0 kB view raw view rendered
1# Installing build requisites on other systems 2 3### Fedora 4 5```console 6sudo dnf install texinfo binutils-devel curl cmake mpfr-devel libmpc-devel gmp-devel e2fsprogs ninja-build patch ccache rsync @"C Development Tools and Libraries" @Virtualization 7``` 8Optional: `fuse2fs` for [building images without root](https://github.com/SerenityOS/serenity/pull/11224). 9 10## openSUSE 11 12```console 13sudo zypper install curl cmake mpfr-devel mpc-devel ninja gmp-devel e2fsprogs patch qemu-x86 qemu-audio-pa gcc gcc-c++ ccache rsync patterns-devel-C-C++-devel_C_C++ 14``` 15 16## Void Linux 17 18```console 19sudo xbps-install -S base-devel cmake curl mpfr-devel libmpc-devel gmp-devel e2fsprogs ninja qemu ccache rsync 20``` 21 22## ALT Linux 23 24```console 25apt-get install curl cmake libmpc-devel gmp-devel e2fsprogs libmpfr-devel ninja-build patch gcc ccache rsync 26``` 27 28## NixOS 29 30You can use the `nix-shell` script [`Toolchain/serenity.nix`](../Toolchain/serenity.nix) to set up the environment: 31 32```console 33nix-shell Toolchain/serenity.nix 34``` 35 36## Alpine Linux 37 38First, make sure you have enabled the `community` repository in `/etc/apk/repositories` and run `apk update`. It has been tested on `edge`, YMMV on `stable`. 39 40```console 41# the basics, if you have not already done so 42apk add bash curl git util-linux sudo 43 44# GNU coreutils for GNU's version of `du` 45apk add coreutils 46 47# rough equivalent of build-essential 48apk add build-base 49 50# qemu 51apk add qemu qemu-system-i386 qemu-img qemu-ui-gtk 52 53# build tools (samurai is a drop-in replacement for ninja) 54apk add cmake e2fsprogs grub-bios samurai mpc1-dev mpfr-dev gmp-dev ccache rsync texinfo 55``` 56 57## OpenBSD prerequisites 58 59```console 60doas pkg_add bash cmake g++ gcc git gmake gmp ninja ccache rsync coreutils qemu sudo e2fsprogs 61``` 62 63## FreeBSD prerequisites 64 65```console 66pkg install qemu bash cmake coreutils e2fsprogs fusefs-ext2 gcc11 git gmake ninja sudo gmp mpc mpfr ccache rsync 67``` 68Optional: `fusefs-ext2` for [building images without root](https://github.com/SerenityOS/serenity/pull/11224).