Skip to content

FAQ Build and Install

G.J.R. Timmer edited this page Jun 26, 2026 · 2 revisions

FAQ — Build & Install

← Back to FAQ · Full guide: Build and Install

pkg-config cannot find nvmpi

Symptom. FFmpeg's ./configure --enable-nvmpi fails, or builds that depend on nvmpi report Package nvmpi was not found in the pkg-config search path.

Cause. After installing libnvmpi, the linker cache and the pkg-config search path do not yet include the install prefix.

Resolution.

sudo ldconfig
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH
pkg-config --libs nvmpi   # expect: -lnvmpi

Persist PKG_CONFIG_PATH in your shell profile if you build FFmpeg often. See the verification steps.

References. Keylost#22, Keylost#36.

glibc ≥ 2.34 pthread_join segfault

Symptom. Segfault on teardown / pthread_join on newer toolchains, building on Ubuntu 22.04-class systems or recent JetPack.

Cause. glibc 2.34 folded libpthread into libc, which broke the NVIDIA sample-class NvV4l2ElementPlane thread join against the original prebuilt objects.

Resolution. Fixed in this fork (#6) by vendoring a patched NvV4l2ElementPlane. Build normally with scripts/build.sh on a current system — no manual workaround is needed.

References. Keylost#21, Keylost PR#48, local #6.

Ubuntu 22.04 builds

Symptom. Build failures specific to Ubuntu 22.04 / newer host libraries.

Cause. Same root as the glibc ≥ 2.34 item above; historically people worked around it with a linux-libc-dev downgrade.

Resolution. The linux-libc-dev workaround is no longer required — the vendored fix from #6 makes 22.04 builds work out of the box. See Build and Install and Cross-Building with Stubs for off-Jetson compilation.

References. Keylost#21, Keylost PR#48.

Does FFmpeg need libnvmpi.so installed to run?

No. Since v3.7.0, FFmpeg loads libnvmpi.so at runtime via dlopen — it is no longer a link-time dependency. FFmpeg starts and runs normally without libnvmpi.so installed; software codecs are unaffected. The library is only needed when you actually use an nvmpi hardware codec.

If libnvmpi.so is missing at runtime and you try to use an nvmpi codec, FFmpeg prints a clear error message telling you to install it:

[h264_nvmpi @ ...] Failed to load libnvmpi.so. Install libnvmpi to use hardware acceleration.

Install libnvmpi.so by building and installing jetson-ffmpeg normally (see Build and Install).

Clone this wiki locally