I have installed Slackware 15.0 64 bit. I am trying to recompile ffmpeg 4.4.1 to support more options, the problematic options are opencv, lensfun and glslang.
When I try to compile with with --enable-opencv it gives the error: opencv not found using pkg-config.I've added the location of opencv4.pc to the $PATH but it still fails. I've only found some couple links but not any answer to this problem.
https://trac.ffmpeg.org/ticket/7608
https://www.linuxquestions.org/quest...cv-4175645720/
Coming to lensfun, I'm using lensfun verison 0.3.95. FFmpeg 4.4.1 detects it during configure but during compilation it gives the following error
Code:
In file included from libavfilter/vf_lensfun.c:40:
/usr/include/lensfun/lensfun.h:3102:41: note: expected ‘const lfLens *’ but argument is of type ‘int’
3102 | lfModifier *modifier, const lfLens* lens, float focal, lfLensType target_projection);
| ~~~~~~~~~~~~~~^~~~
libavfilter/vf_lensfun.c:234:17: error: too few arguments to function ‘lf_modifier_enable_projection_transform’
234 | lf_modifier_enable_projection_transform(lensfun->modifier, lensfun->target_geometry);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from libavfilter/vf_lensfun.c:40:
/usr/include/lensfun/lensfun.h:3101:17: note: declared here
3101 | LF_EXPORT cbool lf_modifier_enable_projection_transform (
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
libavfilter/vf_lensfun.c:238:17: error: too few arguments to function ‘lf_modifier_enable_tca_correction’
238 | lf_modifier_enable_tca_correction(lensfun->modifier);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from libavfilter/vf_lensfun.c:40:
/usr/include/lensfun/lensfun.h:3094:15: note: declared here
3094 | LF_EXPORT int lf_modifier_enable_tca_correction (lfModifier *modifier, const lfLens* lens, float focal);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make: *** [ffbuild/common.mak:67: libavfilter/vf_lensfun.o] Error 1
I found this link for lensfun again no solutions to it,
https://trac.ffmpeg.org/ticket/9112
when trying it with ffmpeg 5.0 it gives the following error
Code:
libavfilter/vf_lensfun.c:234:17: error: implicit declaration of function ‘lf_modifier_enable_projection_transform’ [-Werror=implicit-function-declaration]
234 | lf_modifier_enable_projection_transform(lensfun->modifier, lensfun->target_geometry);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
libavfilter/vf_lensfun.c:235:17: error: implicit declaration of function ‘lf_modifier_enable_scaling’ [-Werror=implicit-function-declaration]
235 | lf_modifier_enable_scaling(lensfun->modifier, lensfun->scale);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
libavfilter/vf_lensfun.c:238:17: error: implicit declaration of function ‘lf_modifier_enable_tca_correction’ [-Werror=implicit-function-declaration]
238 | lf_modifier_enable_tca_correction(lensfun->modifier);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors
make: *** [ffbuild/common.mak:67: libavfilter/vf_lensfun.o] Error 1
In Debian and Arch, there seems to be no problem with enabling lensfun.
when enabling libglslang it gives an error libglslang not found. I have installed glslang version 11.8.0 but curiously libglslang gets detected in ffmpeg 5.0 and compiles with no problem but not in ffmpeg 4.4.1.
can you guys please help me with this.