AAMP is built on top of GStreamer and uses CMake as its build system. This document consolidates build instructions for all supported platforms.
- CMake 3.14+
- GCC/Clang with C++17 support
- GStreamer 1.x development files
- OpenSSL development files
- libcurl development files
sudo apt-get update
sudo apt-get install -y \
build-essential \
cmake \
libgstreamer1.0-dev \
libgstreamer-plugins-base1.0-dev \
libssl-dev \
libcurl4-openssl-dev \
pkg-config \
libxml2-devFor detailed Ubuntu setup, see UbuntuSetup.md.
cd /path/to/aamp
mkdir -p build
cd build
cmake ..
make -j$(nproc)cmake -DCMAKE_BUILD_TYPE=Debug ..
make -j$(nproc)make installThe default install prefix is /usr/local. To change it:
cmake -DCMAKE_INSTALL_PREFIX=/opt/aamp ..Build and run L1 unit tests:
cd /path/to/aamp
mkdir -p build
cd build
cmake -DENABLE_UNIT_TESTS=ON ..
make -j$(nproc)
ctest --verboseFor comprehensive test documentation, see TESTING.md.
Additional setup may be required for DRM-related tests. See test/utests/drm/README.md for details.
| Flag | Type | Description |
|---|---|---|
CMAKE_BUILD_TYPE |
String | Debug or Release (default: Release) |
CMAKE_INSTALL_PREFIX |
Path | Installation directory (default: /usr/local) |
ENABLE_UNIT_TESTS |
Boolean | Build L1 unit tests (default: OFF) |
ENABLE_SIMULATOR |
Boolean | Build AAMP simulator (default: OFF) |
GStreamer not found:
pkg-config --cflags --libs gstreamer-1.0Missing OpenSSL:
brew install openssl # macOS
sudo apt-get install libssl-dev # UbuntuFor more troubleshooting help, see TROUBLESHOOTING.md.
All changes are validated through the CI pipeline before merge. Tests must pass locally before submission:
make test # or ctest