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`
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
🐛🧹 ⚠️ 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!
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"`
(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!
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.
(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)