From 234466672506a55d9c118cbf649533a4f32baa05 Mon Sep 17 00:00:00 2001 From: Ben Wiederhake Date: Sat, 8 Apr 2023 01:42:08 +0200 Subject: [PATCH] Documentation+Ports: Be upfront about dependencies Yes, these can be 'discovered' incrementally, but it's usually nicer to be upfront instead of making the user play trial-and-error. --- Documentation/BuildInstructions.md | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/Documentation/BuildInstructions.md b/Documentation/BuildInstructions.md index 3a6e6014b6f..5d855bd3967 100644 --- a/Documentation/BuildInstructions.md +++ b/Documentation/BuildInstructions.md @@ -112,6 +112,19 @@ To add a package from the ports collection to Serenity, for example curl, change run `./package.sh`. The source code for the package will be downloaded and the package will be built. The next time you start Serenity, `curl` will be available. +Ports might also have additional dependencies. Most prominently, you may need: +`autoconf`, `automake`, `bison`, `flex`, `gettext`, `gperf`, `help2man`, `imagemagick` (specifically "convert"), +`libgpg-error-dev`, `libtool`, `lzip`, `meson`, `nasm` (or another assembler), `qt6-base-dev`, `rename`, `zip`. + +For select ports you might need slightly more exotic dependencies such as: +- ´file` (version 5.44 exactly, for file) +- ´libpython3-dev` (most prominently for boost) +- ´lua` (for luarocks) +- ´openjdk-17-jdk` (to compile OpenJDK) +- ´rake` (to build mruby). + +You may also need a symlink from "/usr/bin/python" to "/usr/bin/python3"; some ports depend on "python" existing, most notably ninja. + ## More information At this point you should have a fully functioning VM for SerenityOS. The [advanced build instructions guide](AdvancedBuildInstructions.md)