Re: Build failure
Gilles Caulier <[email protected]> Sun, 3 Aug 2025 11:18:21 +0200
| Newsgroups | gmane.comp.kde.digikam.devel |
|---|---|
| Message-ID | <CAHFG6sEBTZMWQA7CcusDwV-52qaQRVidx7e3ePd==BEL++DsaA@mail.gmail.com> |
Hi, The problem must be the ffmpeg API. Which ffmpeg version did you use on your system ? Here all compile fine with the 6.x and the last 7.x. https://ffmpeg.org/download.html Please also report the ffmpeg libraries version returned by cmake at configuration time. Typically, you must saw something like that: -- Use PkgConfig to check FFMPEG AVCODEC availability... -- Checking for module 'libavcodec' -- Found libavcodec, version 60.31.102 -- Use PkgConfig to check FFMPEG AVFILTER availability... -- Checking for module 'libavfilter' -- Found libavfilter, version 9.12.100 -- Use PkgConfig to check FFMPEG AVFORMAT availability... -- Checking for module 'libavformat' -- Found libavformat, version 60.16.100 -- Use PkgConfig to check FFMPEG AVDEVICE availability... -- Checking for module 'libavdevice' -- Found libavdevice, version 60.3.100 -- Use PkgConfig to check FFMPEG AVUTIL availability... -- Checking for module 'libavutil' -- Found libavutil, version 58.29.100 -- Use PkgConfig to check FFMPEG SWSCALE availability... -- Checking for module 'libswscale' -- Found libswscale, version 7.5.100 -- Use PkgConfig to check FFMPEG POSTPROC availability... -- Checking for module 'libpostproc' -- Found libpostproc, version 57.3.100 -- Use PkgConfig to check FFMPEG AVRESAMPLE availability... -- Checking for module 'libavresample' -- Package 'libavresample', required by 'virtual:world', not found -- Use PkgConfig to check FFMPEG SWRESAMPLE availability... -- Checking for module 'libswresample' -- Found libswresample, version 4.12.100 -- Found FFmpeg: /usr/lib/aarch64-linux-gnu/libavcodec.so;/usr/lib/aarch64-linux-gnu/libavde= vice.so;/usr/lib/aarch64-linux-gnu/libavfilter.so;/usr/lib/aarch64-linux-gn= u/libavformat.so;/usr/lib/aarch64-linux-gnu/libavutil.so;/usr/lib/aarch64-l= inux-gnu/libswscale.so;/usr/lib/aarch64-linux-gnu/libswresample.so -- FFMPEG_FOUND =3D TRUE -- FFMPEG_INCLUDE_DIRS =3D /usr/include/aarch64-linux-gnu -- FFMPEG_LIBRARIES =3D /usr/lib/aarch64-linux-gnu/libavcodec.so;/usr/lib/aarch64-linux-gnu/libavde= vice.so;/usr/lib/aarch64-linux-gnu/libavfilter.so;/usr/lib/aarch64-linux-gn= u/libavformat.so;/usr/lib/aarch64-linux-gnu/libavutil.so;/usr/lib/aarch64-l= inux-gnu/libswscale.so;/usr/lib/aarch64-linux-gnu/libswresample.so -- FFMPEG_DEFINITIONS =3D -- Could NOT find FFmpeg (missing: AVRESAMPLE_LIBRARIES AVRESAMPLE_INCLUDE_= DIRS) -- FFMPEG_FOUND =3D FALSE -- FFMPEG_INCLUDE_DIRS =3D /usr/include/aarch64-linux-gnu -- FFMPEG_LIBRARIES =3D /usr/lib/aarch64-linux-gnu/libavcodec.so;/usr/lib/aarch64-linux-gnu/libavde= vice.so;/usr/lib/aarch64-linux-gnu/libavfilter.so;/usr/lib/aarch64-linux-gn= u/libavformat.so;/usr/lib/aarch64-linux-gnu/libavutil.so;/usr/lib/aarch64-l= inux-gnu/libswscale.so;/usr/lib/aarch64-linux-gnu/libswresample.so -- FFMPEG_DEFINITIONS =3D -- FFMpeg AVCodec (required) : TRUE (60.31.102) -- FFMpeg AVDevice (required) : TRUE (60.3.100) -- FFMpeg AVFilter (required) : TRUE (9.12.100) -- FFMpeg AVFormat (required) : TRUE (60.16.100) -- FFMpeg AVUtil (required) : TRUE (58.29.100) -- FFMpeg SWScale (required) : TRUE (7.5.100) -- FFMpeg SWResample (required) : TRUE (4.12.100) -- FFMpeg AVResample (optional) : FALSE () -- FFmpeg support is enabled : yes -- FFMpeg >=3D 5 API : yes -- MediaPlayer type: Qt6::Multimedia Best regards Gilles Caulier Le dim. 3 ao=C3=BBt 2025 =C3=A0 11:01, Andrew Goodbody <[email protected]= .uk> a =C3=A9crit : > > Any idea what might be causing this build failure? > > [ 10%] Building CXX object > core/libs/threadimageio/CMakeFiles/core_threadimageio_obj.dir/video/video= thumbdecoder_p.cpp.o > /home/ag/src/dk6/core/libs/threadimageio/video/videothumbdecoder_p.cpp: > In member function =E2=80=98bool > Digikam::VideoThumbDecoder::Private::processFilterGraph(AVFrame*, const > AVFrame*, AVPixelFormat, int, int)=E2=80=99: > /home/ag/src/dk6/core/libs/threadimageio/video/videothumbdecoder_p.cpp:29= 5:45: > error: invalid conversion from =E2=80=98uint8_t**=E2=80=99 {aka =E2=80=98= unsigned char**=E2=80=99} to > =E2=80=98const uint8_t**=E2=80=99 {aka =E2=80=98const unsigned char**=E2= =80=99} [-fpermissive] > 295 | av_image_copy(dst->data, dst->linesize, > reinterpret_cast<uint8_t**>(filterFrame->data), filterFrame->linesize, > pixfmt, width, height); > | > ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > | | > | uint8_t** {aka > unsigned char**} > In file included from > /home/ag/src/dk6/core/libs/threadimageio/video/videothumbdecoder_p.h:27, > from > /home/ag/src/dk6/core/libs/threadimageio/video/videothumbdecoder_p.cpp:17= : > /usr/include/x86_64-linux-gnu/libavutil/imgutils.h:154:35: note: > initializing argument 3 of =E2=80=98void av_image_copy(uint8_t**, int*, c= onst > uint8_t**, const int*, AVPixelFormat, int, int)=E2=80=99 > 154 | const uint8_t *src_data[4], const int > src_linesizes[4], > | ~~~~~~~~~~~~~~~^~~~~~~~~~~ > make[2]: *** > [core/libs/threadimageio/CMakeFiles/core_threadimageio_obj.dir/build.make= :426: > core/libs/threadimageio/CMakeFiles/core_threadimageio_obj.dir/video/video= thumbdecoder_p.cpp.o] > Error 1 > make[1]: *** [CMakeFiles/Makefile2:8861: > core/libs/threadimageio/CMakeFiles/core_threadimageio_obj.dir/all] Error = 2 > make: *** [Makefile:146: all] Error 2 > > > $ gcc --version > gcc (Debian 12.2.0-14+deb12u1) 12.2.0 > > > Thanks, > Andrew