libvpx-1.16.0

#### Gaming Linux® From Scratch - Version 13.0

### Chapter 22. GS

- Prev

  LAME-3.100

- Next

  x264-20250815

- Up
- Home

# libvpx-1.16.0

## Introduction to libvpx

This package, from the WebM project, provides the reference implementations of the VP8 Codec (used in most current HTML5 video) and of the next-generation VP9 Codec.

- Download: https://github.com/webmproject/libvpx/archive/v1.16.0/libvpx-1.16.0.tar.gz

### Additional Downloads

- Required patch: https://www.linuxfromscratch.org/glfs/view/13.0/download/libvpx/libvpx-1.16.0-security_fix-1.patch

### libvpx Dependencies

Recommended
NASM-3.01 and Which-2.23 (so configure can find nasm)

## Installation of libvpx

If upgrading from a previous version of libvpx, update the timestamps of all the files to prevent the build system from retaining the files from the old installation:

    find -type f | xargs touch

Next, fix a security vulnerability:

    patch -Np1 -i ../libvpx-1.16.0-security_fix-1.patch

Install libvpx by running the following commands:

    sed -i 's/cp -p/cp/' build/make/Makefile &&

    mkdir libvpx-build            &&
    cd    libvpx-build            &&

    ../configure --prefix=/usr         \
                 --enable-shared       \
                 --disable-static      \
                 --disable-examples    \
                 --disable-unit-tests &&
    make

Now, as the `root` user:

    make install

## lib32-Installation of libvpx

Install lib32-libvpx by running the following commands:

    rm -rf * &&
    CC="gcc -m32" CXX="g++ -m32"          \
    PKG_CONFIG_PATH=/usr/lib32/pkgconfig  \
    ../configure --prefix=/usr            \
                 --libdir=/usr/lib32      \
                 --target=x86-linux-gcc   \
                 --enable-shared          \
                 --disable-static         \
                 --disable-examples       \
                 --disable-unit-tests    &&

    make

Now, as the `root` user:

    make DESTDIR=$PWD/DESTDIR install     &&
    cp -vr DESTDIR/usr/lib32/* /usr/lib32 &&
    rm -rf DESTDIR                        &&
    ldconfig

## Command Explanations

### Note

Run ../configure --help for a full list of options.

sed ... : This command corrects the ownership and permissions of installed files.

mkdir libvpx-build && cd libvpx-build: The libvpx developers recommend building in a dedicated build directory.

`--disable-static`: This switch prevents installation of static versions of the libraries.

`--disable-examples`: This parameter disables building examples that take a while to build.

`--disable-unit-tests`: This parameter disables building tests that take a while to build.

`--disable-vp8`: This switch prevents building support for the VP8 codec.

`--disable-vp9`: This switch prevents building support for the VP9 codec.

`--target=generic-gnu`: This switch disables optimizations specific to x86 and x86-64, allowing to build this package without nasm and yasm installed.

## Contents

Installed Programs: vpxdec and vpxenc
Installed Libraries: libvpx
Installed Directories: /usr/include/vpx

### Short Descriptions

vpxdec | is the WebM Project VP8 and VP9 decoder
vpxenc | is the WebM project VP8 and VP9 encoder
`libvpx` | provides functions to use the VP8 and VP9 video codecs

- Prev

  LAME-3.100

- Next

  x264-20250815

- Up
- Home