Installation¶
Precompiled binary¶
Binaries are provided for 64-bit x86 Linux, ARM-based MacOSX, and Windows at https://github.com/MikkelSchubert/adapterremoval/releases/
Installing from source¶
This section describes how to build and install the latest version of AdapterRemoval from source.
Prerequisites¶
Building and installing AdapterRemoval requires basic build tools including a C++17 capable compiler, meson v1.2+, ninja, python 3.9+, libdeflate and isa-l v2.30+. Sphinx is additionally required to build the documentation. Of these dependencies, only libdeflate and isa-l are required to run AdapterRemoval, once it has been installed.
Debian:
sudo apt-get install build-essential meson ninja-build libdeflate-dev libisal-dev python3 python3-sphinx pkgconf
OSX, requires Homebrew to install the dependencies:
brew install llvm meson ninja isa-l libdeflate sphinx-doc pkgconf
Windows, requires MSYS2 with an UCRT64 environment:
pacman -S make mingw-w64-ucrt-x86_64-gcc mingw-w64-ucrt-x86_64-isa-l mingw-w64-ucrt-x86_64-libdeflate mingw-w64-ucrt-x86_64-meson mingw-w64-ucrt-x86_64-python mingw-w64-ucrt-x86_64-python-sphinx
Building AdapterRemoval¶
To compile AdapterRemoval, first download and unpack the newest release from GitHub, and then run make in the resulting directory:
wget -O adapterremoval-3.0.0.tar.gz https://github.com/MikkelSchubert/adapterremoval/archive/v3.0.0.tar.gz
tar xvzf adapterremoval-3.0.0.tar.gz
cd adapterremoval-3.0.0
make
The resulting adapterremoval3 executable is located in the build/src subdirectory, and can be run as-is. It is also possible to perform a system-wide installation of the AdapterRemoval executable, man-page, and examples using the following command:
sudo make install
Building a static Linux binary¶
A podman/docker Containerfile is provided, which is used to generate the pre-compiled binaries mentioned above. To build this, either podman or docker are required.
To build the container and the static binary, run
make static-container static
The resulting executable and other files are saved to build/static/install.