[Slackbuilds-users] libdv: a problem and a possible fix

Matteo Bernardini matteo.bernardini at gmail.com
Thu May 26 17:12:36 UTC 2016


2016-05-26 18:36 GMT+02:00 Luiz Carlos Ramos <lramos.prof at yahoo.com.br>:
> On Thu, May 26, 2016 at 09:22:34PM +0700, Willy Sudiarto Raharjo wrote:
>> > recently I've built libdv using the slackbuild, and got a problem.
>> >
>> > Basically, the source libdv/enc_input.c uses a macro (VIDEO_MAX_FRAME)
>> > possibly defined in /usr/include/linux/videodev.h. Looking at that file,
>> > the macro isn't defined, and so the build process stop with a proper
>> > error.
>> >
>> > I have to say I'm not using the stock kernel, but 3.16.3. I
>> > don't know if this problem is specific to this kernel or if it applies
>> > to the stock 14.1 kernel as well (or to -current).
>> >
>> > Making some investigation, I've found that this macro is defined at
>> > /usr/include/linux/videodev2.h, and it's defined with 32. Also,
>> > at least one case was solved defining this macro at the application
>> > level, such as
>> > https://lists.debian.org/debian-glibc/2006/07/msg00149.html, for
>> > instance (although recognizing this case is not about libdv at all).
>> >
>> > What I did was defining that macro in libdv/enc_input.c if it's not
>> > still not defined. I've built a patch to that file and included it at
>> > the SlackBuild script. The git patch goes attached.
>> >
>> > Another option, which I didn't try, was to substitute #include videodev.h to
>> > #include videodev2.h.
>> >
>> > Hope this can help the community!
>>
>> Hi Luiz
>>
>> May i know which Slackware version do you use ?
>> 14.1 or current?
>>
>
> 14.1, with a different kernel as mentioned above (3.16.3).

Hi Luiz,

I just tried building libdv on slackware-14.1 and slackware64-14.1 and
in either case the build process just bypass that header

...
checking for unistd.h... (cached) yes
checking linux/videodev.h usability... no
checking linux/videodev.h presence... no
checking for linux/videodev.h... no
checking sys/soundcard.h usability... yes
...

libdv hasn't been updated since ten years and that header was part of
the old v4l, that unfortunately isn't available anymore.

the best solution, IMHO, is to left it as-is, ignoring support for v4l
devices in libdv.

Matteo


More information about the SlackBuilds-users mailing list