Bug 471281 - Error building kdenlive inside container
Summary: Error building kdenlive inside container
Status: RESOLVED FIXED
Alias: None
Product: kdenlive
Classification: Applications
Component: Setup & Installation (other bugs)
Version First Reported In: 22.12.3
Platform: Compiled Sources Linux
: NOR normal
Target Milestone: ---
Assignee: Jean-Baptiste Mardelle
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-06-21 06:34 UTC by mashkal2000@gmail.com
Modified: 2025-04-18 11:42 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description mashkal2000@gmail.com 2023-06-21 06:34:02 UTC
SUMMARY
***
Error building kdenlive inside container
***


STEPS TO REPRODUCE
1. Follow the instructions from the build.md file inside an ubuntu 22.04 container: 
```
sudo apt install software-properties-common
sudo add-apt-repository ppa:kdenlive/kdenlive-master
sudo apt update
sudo apt remove kdenlive kdenlive-data
sudo apt install build-essential git cmake extra-cmake-modules libsm-dev
# KDE Frameworks 5, based on Qt5
sudo apt install libkf5archive-dev libkf5bookmarks-dev libkf5coreaddons-dev libkf5config-dev libkf5configwidgets-dev libkf5dbusaddons-dev libkf5kio-dev libkf5widgetsaddons-dev libkf5notifyconfig-dev libkf5newstuff-dev libkf5xmlgui-dev libkf5declarative-dev libkf5notifications-dev libkf5guiaddons-dev libkf5textwidgets-dev libkf5purpose-dev libkf5iconthemes-dev libkf5crash-dev libkf5filemetadata-dev libkf5codecs-dev kio kinit qtdeclarative5-dev libqt5svg5-dev qml-module-qtquick-controls libqt5networkauth5-dev qtmultimedia5-dev qtquickcontrols2-5-dev qttools5-dev breeze-icon-theme breeze
# Multimedia stack
sudo apt install frei0r-plugins ffmpeg
# MLT, except if you want to build it manually 
sudo apt install libmlt++-dev libmlt-dev melt
# Dependencies for localization
sudo apt install ruby subversion gnupg2 gettext
# KDE Frameworks 5, based on Qt5
sudo apt install libkf5archive-dev libkf5bookmarks-dev libkf5coreaddons-dev libkf5config-dev libkf5configwidgets-dev libkf5dbusaddons-dev libkf5kio-dev libkf5widgetsaddons-dev libkf5notifyconfig-dev libkf5newstuff-dev libkf5xmlgui-dev libkf5declarative-dev libkf5notifications-dev libkf5guiaddons-dev libkf5textwidgets-dev libkf5purpose-dev libkf5iconthemes-dev libkf5crash-dev libkf5filemetadata-dev libkf5codecs-dev kio kinit qtdeclarative5-dev libqt5svg5-dev qml-module-qtquick-controls libqt5networkauth5-dev qtmultimedia5-dev qtquickcontrols2-5-dev qttools5-dev breeze-icon-theme breeze
# Multimedia stack
sudo apt install frei0r-plugins ffmpeg
# MLT, except if you want to build it manually 
sudo apt install libmlt++-dev libmlt-dev melt
# Dependencies for localization
sudo apt install ruby subversion gnupg2 gettext
cd repos/kdenlive/
mkdir build && cd build
cd build/
cmake .. -DCMAKE_INSTALL_PREFIX=$INSTALL_PREFIX -DKDE_INSTALL_USE_QT_SYS_PATHS=ON -DRELEASE_BUILD=OFF
make
make clean
make
make -j20
make
make -j20
```
2. 
3. 

OBSERVED RESULT
[  0%] Generating mo...
[  0%] Built target pofiles-28e9cd9342f40d775d3d467cf7a44d62
[  0%] Generating ts...
[  0%] Built target tsfiles-28e9cd9342f40d775d3d467cf7a44d62
[  0%] Automatic MOC for target media_ctrl
[  0%] Built target media_ctrl_autogen
[  1%] Built target media_ctrl
[  1%] Automatic MOC for target kiss_fft
[  1%] Built target kiss_fft_autogen
[  2%] Built target kiss_fft
[  2%] Automatic MOC for target kdenliveLib
[  2%] Built target kdenliveLib_autogen
[ 64%] Built target kdenliveLib
[ 65%] Automatic MOC for target kdenlive
[ 65%] Built target kdenlive_autogen
make[2]: *** No rule to make target '/usr/lib/x86_64-linux-gnu/libv4l2.so', needed by 'bin/kdenlive'.  Stop.
make[1]: *** [CMakeFiles/Makefile2:2245: src/CMakeFiles/kdenlive.dir/all] Error 2
make: *** [Makefile:146: all] Error 2


EXPECTED RESULT
no error

SOFTWARE/OS VERSIONS
This is inside the container, running under podman:

PRETTY_NAME="Ubuntu 22.04.2 LTS"
NAME="Ubuntu"
VERSION_ID="22.04"
VERSION="22.04.2 LTS (Jammy Jellyfish)"
VERSION_CODENAME=jammy
ID=ubuntu
ID_LIKE=debian
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
UBUNTU_CODENAME=jammy

ADDITIONAL INFORMATION
container was created using `distrobox-create -n kdenlive-dev-nv -i ubuntu:22.04 --nvidia`
Comment 1 Julius Künzel 2025-03-29 20:09:42 UTC
It looks like a libv4l was not installed (correctly)? Not sure why CMake didn't notice it though...

However, please see my comment on BUG 472148 and check if this is still relevant
Comment 2 Bug Janitor Service 2025-04-13 03:46:55 UTC
🐛🧹 ⚠️ This bug has been in NEEDSINFO status with no change for at least 15 days. Please provide the requested information, then set the bug status to REPORTED. If there is no change for at least 30 days, it will be automatically closed as RESOLVED WORKSFORME.

For more information about our bug triaging procedures, please read https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging.

Thank you for helping us make KDE software even better for everyone!
Comment 3 mashkal2000@gmail.com 2025-04-13 06:05:21 UTC
Is there a specific commit of mlt that is known to work? I'm getting an error building mlt as a dependency for kdenlive
```
+ git clone https://github.com/mltframework/mlt.git
Cloning into 'mlt'...
+ cd mlt
+ mkdir build
+ cd build
+ cmake .. -GNinja -DMOD_QT=OFF -DMOD_QT6=ON -DMOD_GLAXNIMATE=OFF -DMOD_GLAXNIMATE_QT6=ON
-- The C compiler identification is GNU 14.2.0
-- The CXX compiler identification is GNU 14.2.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
-- Found PkgConfig: /usr/bin/pkg-config (found version "1.8.1")
-- Checking for module 'sdl2'
--   Found sdl2, version 2.30.6
-- Checking for module 'fftw3'
--   Found fftw3, version 3.3.10
-- Checking for module 'libexif'
--   Package 'libexif', required by 'virtual:world', not found
-- Checking for module 'fontconfig'
--   Found fontconfig, version 2.15.0
-- Checking for module 'libxml-2.0'
--   Found libxml-2.0, version 2.12.7
-- Checking for module 'libavformat'
--   Found libavformat, version 61.1.100
-- Checking for module 'libswscale'
--   Found libswscale, version 8.1.100
-- Checking for module 'libavutil'
--   Found libavutil, version 59.8.100
-- Checking for module 'libavcodec'
--   Found libavcodec, version 61.3.100
-- Checking for module 'libavfilter'
--   Found libavfilter, version 10.1.100
-- Checking for module 'libavdevice'
--   Found libavdevice, version 61.1.100
-- Checking for module 'libswresample'
--   Found libswresample, version 5.1.100
-- Checking for module 'frei0r'
--   Package 'frei0r', required by 'virtual:world', not found
-- Checking for module 'gdk-pixbuf-2.0'
--   Package 'gdk-pixbuf-2.0', required by 'virtual:world', not found
-- Found JACK: /usr/lib/x86_64-linux-gnu/libjack.so (found version "0.126.0")
-- Checking for module 'glib-2.0'
--   Found glib-2.0, version 2.82.1
-- Looking for ladspa.h
-- Looking for ladspa.h - not found
-- Checking for module 'movit'
--   Package 'movit', required by 'virtual:world', not found
-- Found OpenGL: /usr/lib/x86_64-linux-gnu/libOpenGL.so
-- Checking for module 'libebur128'
--   Found libebur128, version 1.2.6
-- Performing Test HAVE_STDATOMIC
-- Performing Test HAVE_STDATOMIC - Success
-- Found WrapAtomic: TRUE
-- Found WrapOpenGL: TRUE
-- Found XKB: /usr/lib/x86_64-linux-gnu/libxkbcommon.so (found suitable version "1.6.0", minimum required is "0.5.0")
-- Found WrapVulkanHeaders: /usr/include
-- Could NOT find Qt6Core5Compat (missing: Qt6Core5Compat_DIR)
CMake Warning at CMakeLists.txt:317 (find_package):
  Found package configuration file:

    /usr/lib/x86_64-linux-gnu/cmake/Qt6/Qt6Config.cmake

  but it set Qt6_FOUND to FALSE so package "Qt6" is considered to be NOT
  FOUND.  Reason given by package:

  Failed to find required Qt component "Core5Compat".

  Expected Config file at
  "/usr/lib/x86_64-linux-gnu/cmake/Qt6Core5Compat/Qt6Core5CompatConfig.cmake"
  does NOT exist



  Configuring with --debug-find-pkg=Qt6Core5Compat might reveal details why
  the package was not found.

  Configuring with -DQT_DEBUG_FIND_PACKAGE=ON will print the values of some
  of the path variables that find_package uses to try and find the package.



-- Checking for module 'samplerate'
--   Found samplerate, version 0.2.2
-- Checking for module 'rtaudio'
--   Found rtaudio, version 6.0.1
-- Checking for module 'rubberband'
--   Found rubberband, version 3.3.0
-- Checking for module 'sdl'
--   Found sdl, version 1.2.68
-- Checking for module 'sox'
--   Found sox, version 14.4.2
-- Checking for module 'spatialaudio'
--   Package 'spatialaudio', required by 'virtual:world', not found
-- Checking for module 'vidstab'
--   Package 'vidstab', required by 'virtual:world', not found
-- Checking for module 'vorbis'
--   Package 'vorbis', required by 'virtual:world', not found
-- Checking for module 'vorbisfile'
--   Package 'vorbisfile', required by 'virtual:world', not found
-- Could NOT find SWIG (missing: SWIG_EXECUTABLE SWIG_DIR) 
-- Could NOT find ClangFormat (missing: CLANGFORMAT_EXECUTABLE CLANGFORMAT_VERSION) (Required is exact version "14")
CMake Error: File /mlt/src/modules/glaxnimate/glaxnimate/src/core/application_info_generated.in.hpp does not exist.
CMake Error at src/modules/glaxnimate/CMakeLists.txt:160 (configure_file):
  configure_file Problem configuring file
Call Stack (most recent call first):
  src/modules/glaxnimate/CMakeLists.txt:215 (mlt_add_glaxnimate_module)


-- The following features have been enabled:

 * GPLv2
 * GPLv3
 * Module: avformat
 * Module: DeckLink
 * Module: Glaxnimate (Qt6)
 * Module: JACKRack
 * Module: Kdenlive
 * Module: Normalize
 * Module: Oldfilm
 * Module: Plus
 * Module: PlusGPL
 * Module: Resample
 * Module: RtAudio
 * Module: Rubberband
 * Module: SDL1
 * Module: SDL2
 * Module: SoX
 * Module: XINE
 * Module: XML

-- The following OPTIONAL packages have been found:

 * JACK
 * Qt6CoreTools (required version >= 6.6.2)
 * Qt6Core
 * OpenGL
 * XKB (required version >= 0.5.0), XKB API common to servers and clients., <http://xkbcommon.org>
 * Vulkan
 * WrapVulkanHeaders
 * Qt6GuiTools (required version >= 6.6.2)
 * Qt6DBusTools (required version >= 6.6.2)
 * Qt6Gui
 * Qt6Xml
 * Qt6WidgetsTools (required version >= 6.6.2)
 * Qt6SvgWidgets
 * Qt6Network
 * Qt6

-- The following REQUIRED packages have been found:

 * Threads
 * PkgConfig

-- The following features have been disabled:

 * Tests
 * Doxygen
 * Clang Format
 * Module: Frei0r
 * Module: GDK
 * Module: Glaxnimate (Qt5)
 * Module: NDI
 * Module: OpenCV
 * Module: Movit
 * Module: Qt (Qt5)
 * Module: Qt6
 * Module: SpatialAudio
 * Module: vid.stab
 * Module: Vorbis
 * SWIG: C#
 * SWIG: Java
 * SWIG: Lua
 * SWIG: Node.js
 * SWIG: Perl
 * SWIG: PHP
 * SWIG: Python
 * SWIG: Ruby
 * SWIG: Tcl
 * lv2: LV2 Plugins support
 * vst2: VST2 Plugins support

-- The following OPTIONAL packages have not been found:

 * Qt6Core5Compat
 * SWIG
 * ClangFormat (required version == 14)

-- Configuring incomplete, errors occurred!
+ [ 1 -ne 0 ]
+ printf Error: An error occurred\n
Error: An error occurred
```
Not sure why, since I installed all the qt6 packages listed on the kdenlive build info page
```
# Qt6 modules
additional_packages="qt6-base-dev qt6-svg-dev qt6-multimedia-dev qt6-networkauth-dev"
additional_packages="qml6-module-qtqml-workerscript qml6-module-qtquick-window qml6-module-org-kde-desktop"
```
Built with: `init_hooks="cmake .. -GNinja -DMOD_QT=OFF -DMOD_QT6=ON -DMOD_GLAXNIMATE=OFF -DMOD_GLAXNIMATE_QT6=ON"`
Comment 4 mashkal2000@gmail.com 2025-04-13 06:06:01 UTC
(In reply to mashkal2000@gmail.com from comment #3)
> Is there a specific commit of mlt that is known to work? I'm getting an
> error building mlt as a dependency for kdenlive
> ```
> + git clone https://github.com/mltframework/mlt.git
> Cloning into 'mlt'...
> + cd mlt
> + mkdir build
> + cd build
> + cmake .. -GNinja -DMOD_QT=OFF -DMOD_QT6=ON -DMOD_GLAXNIMATE=OFF
> -DMOD_GLAXNIMATE_QT6=ON
> -- The C compiler identification is GNU 14.2.0
> -- The CXX compiler identification is GNU 14.2.0
> -- Detecting C compiler ABI info
> -- Detecting C compiler ABI info - done
> -- Check for working C compiler: /usr/bin/cc - skipped
> -- Detecting C compile features
> -- Detecting C compile features - done
> -- Detecting CXX compiler ABI info
> -- Detecting CXX compiler ABI info - done
> -- Check for working CXX compiler: /usr/bin/c++ - skipped
> -- Detecting CXX compile features
> -- Detecting CXX compile features - done
> -- Performing Test CMAKE_HAVE_LIBC_PTHREAD
> -- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
> -- Found Threads: TRUE
> -- Found PkgConfig: /usr/bin/pkg-config (found version "1.8.1")
> -- Checking for module 'sdl2'
> --   Found sdl2, version 2.30.6
> -- Checking for module 'fftw3'
> --   Found fftw3, version 3.3.10
> -- Checking for module 'libexif'
> --   Package 'libexif', required by 'virtual:world', not found
> -- Checking for module 'fontconfig'
> --   Found fontconfig, version 2.15.0
> -- Checking for module 'libxml-2.0'
> --   Found libxml-2.0, version 2.12.7
> -- Checking for module 'libavformat'
> --   Found libavformat, version 61.1.100
> -- Checking for module 'libswscale'
> --   Found libswscale, version 8.1.100
> -- Checking for module 'libavutil'
> --   Found libavutil, version 59.8.100
> -- Checking for module 'libavcodec'
> --   Found libavcodec, version 61.3.100
> -- Checking for module 'libavfilter'
> --   Found libavfilter, version 10.1.100
> -- Checking for module 'libavdevice'
> --   Found libavdevice, version 61.1.100
> -- Checking for module 'libswresample'
> --   Found libswresample, version 5.1.100
> -- Checking for module 'frei0r'
> --   Package 'frei0r', required by 'virtual:world', not found
> -- Checking for module 'gdk-pixbuf-2.0'
> --   Package 'gdk-pixbuf-2.0', required by 'virtual:world', not found
> -- Found JACK: /usr/lib/x86_64-linux-gnu/libjack.so (found version "0.126.0")
> -- Checking for module 'glib-2.0'
> --   Found glib-2.0, version 2.82.1
> -- Looking for ladspa.h
> -- Looking for ladspa.h - not found
> -- Checking for module 'movit'
> --   Package 'movit', required by 'virtual:world', not found
> -- Found OpenGL: /usr/lib/x86_64-linux-gnu/libOpenGL.so
> -- Checking for module 'libebur128'
> --   Found libebur128, version 1.2.6
> -- Performing Test HAVE_STDATOMIC
> -- Performing Test HAVE_STDATOMIC - Success
> -- Found WrapAtomic: TRUE
> -- Found WrapOpenGL: TRUE
> -- Found XKB: /usr/lib/x86_64-linux-gnu/libxkbcommon.so (found suitable
> version "1.6.0", minimum required is "0.5.0")
> -- Found WrapVulkanHeaders: /usr/include
> -- Could NOT find Qt6Core5Compat (missing: Qt6Core5Compat_DIR)
> CMake Warning at CMakeLists.txt:317 (find_package):
>   Found package configuration file:
> 
>     /usr/lib/x86_64-linux-gnu/cmake/Qt6/Qt6Config.cmake
> 
>   but it set Qt6_FOUND to FALSE so package "Qt6" is considered to be NOT
>   FOUND.  Reason given by package:
> 
>   Failed to find required Qt component "Core5Compat".
> 
>   Expected Config file at
>   "/usr/lib/x86_64-linux-gnu/cmake/Qt6Core5Compat/Qt6Core5CompatConfig.cmake"
>   does NOT exist
> 
> 
> 
>   Configuring with --debug-find-pkg=Qt6Core5Compat might reveal details why
>   the package was not found.
> 
>   Configuring with -DQT_DEBUG_FIND_PACKAGE=ON will print the values of some
>   of the path variables that find_package uses to try and find the package.
> 
> 
> 
> -- Checking for module 'samplerate'
> --   Found samplerate, version 0.2.2
> -- Checking for module 'rtaudio'
> --   Found rtaudio, version 6.0.1
> -- Checking for module 'rubberband'
> --   Found rubberband, version 3.3.0
> -- Checking for module 'sdl'
> --   Found sdl, version 1.2.68
> -- Checking for module 'sox'
> --   Found sox, version 14.4.2
> -- Checking for module 'spatialaudio'
> --   Package 'spatialaudio', required by 'virtual:world', not found
> -- Checking for module 'vidstab'
> --   Package 'vidstab', required by 'virtual:world', not found
> -- Checking for module 'vorbis'
> --   Package 'vorbis', required by 'virtual:world', not found
> -- Checking for module 'vorbisfile'
> --   Package 'vorbisfile', required by 'virtual:world', not found
> -- Could NOT find SWIG (missing: SWIG_EXECUTABLE SWIG_DIR) 
> -- Could NOT find ClangFormat (missing: CLANGFORMAT_EXECUTABLE
> CLANGFORMAT_VERSION) (Required is exact version "14")
> CMake Error: File
> /mlt/src/modules/glaxnimate/glaxnimate/src/core/application_info_generated.
> in.hpp does not exist.
> CMake Error at src/modules/glaxnimate/CMakeLists.txt:160 (configure_file):
>   configure_file Problem configuring file
> Call Stack (most recent call first):
>   src/modules/glaxnimate/CMakeLists.txt:215 (mlt_add_glaxnimate_module)
> 
> 
> -- The following features have been enabled:
> 
>  * GPLv2
>  * GPLv3
>  * Module: avformat
>  * Module: DeckLink
>  * Module: Glaxnimate (Qt6)
>  * Module: JACKRack
>  * Module: Kdenlive
>  * Module: Normalize
>  * Module: Oldfilm
>  * Module: Plus
>  * Module: PlusGPL
>  * Module: Resample
>  * Module: RtAudio
>  * Module: Rubberband
>  * Module: SDL1
>  * Module: SDL2
>  * Module: SoX
>  * Module: XINE
>  * Module: XML
> 
> -- The following OPTIONAL packages have been found:
> 
>  * JACK
>  * Qt6CoreTools (required version >= 6.6.2)
>  * Qt6Core
>  * OpenGL
>  * XKB (required version >= 0.5.0), XKB API common to servers and clients.,
> <http://xkbcommon.org>
>  * Vulkan
>  * WrapVulkanHeaders
>  * Qt6GuiTools (required version >= 6.6.2)
>  * Qt6DBusTools (required version >= 6.6.2)
>  * Qt6Gui
>  * Qt6Xml
>  * Qt6WidgetsTools (required version >= 6.6.2)
>  * Qt6SvgWidgets
>  * Qt6Network
>  * Qt6
> 
> -- The following REQUIRED packages have been found:
> 
>  * Threads
>  * PkgConfig
> 
> -- The following features have been disabled:
> 
>  * Tests
>  * Doxygen
>  * Clang Format
>  * Module: Frei0r
>  * Module: GDK
>  * Module: Glaxnimate (Qt5)
>  * Module: NDI
>  * Module: OpenCV
>  * Module: Movit
>  * Module: Qt (Qt5)
>  * Module: Qt6
>  * Module: SpatialAudio
>  * Module: vid.stab
>  * Module: Vorbis
>  * SWIG: C#
>  * SWIG: Java
>  * SWIG: Lua
>  * SWIG: Node.js
>  * SWIG: Perl
>  * SWIG: PHP
>  * SWIG: Python
>  * SWIG: Ruby
>  * SWIG: Tcl
>  * lv2: LV2 Plugins support
>  * vst2: VST2 Plugins support
> 
> -- The following OPTIONAL packages have not been found:
> 
>  * Qt6Core5Compat
>  * SWIG
>  * ClangFormat (required version == 14)
> 
> -- Configuring incomplete, errors occurred!
> + [ 1 -ne 0 ]
> + printf Error: An error occurred\n
> Error: An error occurred
> ```
> Not sure why, since I installed all the qt6 packages listed on the kdenlive
> build info page
> ```
> # Qt6 modules
> additional_packages="qt6-base-dev qt6-svg-dev qt6-multimedia-dev
> qt6-networkauth-dev"
> additional_packages="qml6-module-qtqml-workerscript
> qml6-module-qtquick-window qml6-module-org-kde-desktop"
> ```
> Built with: `init_hooks="cmake .. -GNinja -DMOD_QT=OFF -DMOD_QT6=ON
> -DMOD_GLAXNIMATE=OFF -DMOD_GLAXNIMATE_QT6=ON"`

I should mention this is after installing libv4l-dev. Thanks for pointing out that issue!
Comment 5 Julius Künzel 2025-04-13 10:41:29 UTC
It could be that the page you refere to is incomplete or only mentions Qt6 packages for Kdenlive, but not for MLT.

Try to read the cmake output, it tells you that the Qt6Core5Compat module is missing.
Comment 6 mashkal2000@gmail.com 2025-04-18 06:27:13 UTC
(In reply to Julius Künzel from comment #5)
> It could be that the page you refere to is incomplete or only mentions Qt6
> packages for Kdenlive, but not for MLT.
> 
> Try to read the cmake output, it tells you that the Qt6Core5Compat module is
> missing.

Right. After installing the required packages, there was still some issue building MLT - some generated header for glxanimate was missing.. 

Ended up switching the base container to Ubuntu 25.04 and installing MLT from the distro package. There are a few libraries not listed in build.md. Installing the relevant distro packages finally fixes the issue and lets me build kdenlive.

CMake Error at /usr/share/cmake-3.31/Modules/FindPkgConfig.cmake:645 (message):
  The following required packages were not found:

   - libavformat
   - libavcodec
   - libswresample
   - libavutil

Call Stack (most recent call first):
  /usr/share/cmake-3.31/Modules/FindPkgConfig.cmake:873 (_pkg_check_modules_internal)
  CMakeLists.txt:153 (pkg_check_modules)