Summary: | media-video/v4l2loopback-0.8.0 with kernel 3.18 - /work/v4l2loopback-0.8.0/v4l2loopback.c:486:2: error: implicit declaration of function ‘strict_strtoul’ [-Werror=implicit-function-declaration] | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Reuben Martin <reuben.m> |
Component: | Current packages | Assignee: | Naohiro Aota <naota> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | grknight, kamil.lech.roman, kripton |
Priority: | Normal | Keywords: | PATCH |
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
URL: | https://github.com/umlaeute/v4l2loopback/commit/21195cd6d1ff767a271359dfa7d201078f766611 | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Bug Depends on: | 451978, 568776 | ||
Bug Blocks: |
Description
Reuben Martin
2014-12-17 21:47:59 UTC
Workaround (reproduction of steps I did on my workstation, so may contain some minor errors): su - cd /etc/portage #enable patches for all ebuilds as v4l2loopback does not invoke epatch_user, see https://wiki.gentoo.org/wiki//etc/portage/patches for details cat << EOF > bashrcemerge =media-video/v4l2loopback-0.8.0 pre_src_prepare() { if ! type epatch_user > /dev/null 2>&1; then local names="epatch_user epatch evar_push evar_push_set evar_pop estack_push estack_pop" source <(awk "/^# @FUNCTION: / { p = 0 } /^# @FUNCTION: (${names// /|})\$/ { p = 1; } p { print }" /usr/portage/eclass/eutils.eclass) fi elog "Applying patches" epatch_user for name in $names; do unset $name done } EOF #create the portage custom patch directory and download the patch mkdir -pv /etc/portage/patches/media-video/v4l2loopback-0.8.0 cd /etc/portage/patches/media-video/v4l2loopback-0.8.0 wget https://github.com/umlaeute/v4l2loopback/commit/21195cd6d1ff767a271359dfa7d201078f766611.patch #and now emerge should work emerge =media-video/v4l2loopback-0.8.0 I've asked the developer to create a new release (https://github.com/umlaeute/v4l2loopback/issues/89) so a live ebuild can be avoided for kernel >= 4.0 https://github.com/umlaeute/v4l2loopback/commit/56b0d39fe9514bb35b1e85a2e513ac677427ed97 Version 0.9.0 has been tagged which supports kernels up to 4.0. Just renaming the ebuild to 0.9.0 doesn't work since "doc/v4l2.html" no longer exists. Apart from that, it compiles and loads fine. No functional testing done. 0.9.1 has been tagged, fixing the module version displayed in dmesg upon module load New Version committed |