Caution
This document explains how to build Poac from source. Building from source is not recommended unless you are familiar with the process. If your goal is simply to install Poac, refer to the README.md instead.
You will require the following compilers, commands, and libraries:
- GCC:
12
or later - Clang:
16
or later - Apple Clang: provided by
macOS Ventura (13)
or later
(generally, the latest 3 versions are supported to build Poac.)
- GNU Make
- Git
- pkg-config
- find
- grep
- mkdir
- rm
- fmt:
>=8.1.1 && <12
libfmt-dev
on APT (Debian/Ubuntu)fmt-devel
on DNF (Fedora)fmt
on Homebrew
- libgit2:
>=1.1.0 && <1.9
libgit2-dev
on APT (Debian/Ubuntu)libgit2-devel
on DNF (Fedora)libgit2
on Homebrew
- libcurl:
>=7.79.1 && <9
libcurl4-openssl-dev
on APT (Debian/Ubuntu)libcurl-devel
on DNF (Fedora)curl
on Homebrew
- nlohmann_json:
>=3.10.5 && <4
nlohmann-json3-dev
on APT (Debian/Ubuntu)json-devel
on DNF (Fedora)nlohmann-json
on Homebrew
- oneTBB:
>=2021.5.0 && <2023
libtbb-dev
on APT (Debian/Ubuntu)tbb-devel
on DNF (Fedora)tbb
on Homebrew
Installation scripts for libraries:
- APT (Debian/Ubuntu):
sudo apt-get update sudo apt-get install -y libfmt-dev libgit2-dev libcurl4-openssl-dev nlohmann-json3-dev libtbb-dev
- DNF (Fedora):
sudo dnf install -y fmt-devel libgit2-devel libcurl-devel json-devel tbb-devel
- Homebrew:
brew install fmt libgit2 curl nlohmann-json tbb
When running Make, the following libraries will be installed automatically.
Once you have all the necessary requirements in place, you can build Poac by the following commands:
git clone https://github.com/poac-dev/poac.git
cd poac
make RELEASE=1 -j$(nproc) install