[英]v4l2 build error on Debian 8
我按照以下步骤安装Video 4 Linux,
http://www.linuxtv.org/wiki/index.php/How_to_Obtain,_Build_and_Install_V4L-DVB_Device_Drivers
但是在构建时,出现以下错误。 Debian 8虚拟机。
...
CC [M] /media_build/v4l/saa7164-buffer.o
CC [M] /media_build/v4l/saa7164-encoder.o
/media_build/v4l/saa7164-encoder.c: In function 'saa7164_s_frequency':
/media_build/v4l/saa7164-encoder.c:392:2: error: assignment of read-only variable '__val'
port->freq = clamp(f->frequency,
^
/usr/src/linux-headers-3.16.0-4-common/scripts/Makefile.build:262: recipe for target '/media_build/v4l/saa7164-encoder.o' failed
make[5]: *** [/media_build/v4l/saa7164-encoder.o] Error 1
/usr/src/linux-headers-3.16.0-4-common/Makefile:1350: recipe for target '_module_/media_build/v4l' failed
make[4]: *** [_module_/media_build/v4l] Error 2
Makefile:181: recipe for target 'sub-make' failed
make[3]: *** [sub-make] Error 2
Makefile:8: recipe for target 'all' failed
make[2]: *** [all] Error 2
make[2]: Leaving directory '/usr/src/linux-headers-3.16.0-4-686-pae'
Makefile:51: recipe for target 'default' failed
make[1]: *** [default] Error 2
make[1]: Leaving directory '/media_build/v4l'
Makefile:26: recipe for target 'all' failed
make: *** [all] Error 2
build failed at ./build line 491.
root@debian:/media_build#
检查一下,这里是链接 ,这是不同的内核编译日志,因此您可以安装成功的版本内核,然后清理编译字典,然后重新编译。
我认为它可以解决您的问题。
在我的Ubuntu 14.04.3 x86_64情况下,我安装了内核3.18.7,这是解决方案
$ cd /tmp
$ wget \
kernel.ubuntu.com/~kernel-ppa/mainline/v3.18.7-vivid/linux-headers-3.18.7-031807_3.18.7-031807.201502110759_all.deb \
kernel.ubuntu.com/~kernel-ppa/mainline/v3.18.7-vivid/linux-headers-3.18.7-031807-generic_3.18.7-031807.201502110759_amd64.deb \
kernel.ubuntu.com/~kernel-ppa/mainline/v3.18.7-vivid/linux-image-3.18.7- 031807-generic_3.18.7-031807.201502110759_amd64.deb
$ sudo dpkg -i linux-headers-3.18*.deb linux-image-3.18*.deb
$ sudo reboot
参考链接
我遇到了同样的问题,我的解决方法是在v4l / .config文件中设置CONFIG_VIDEO_SAA7164 = n 。 此后,编译将正确执行。
运行make menuconfig
并浏览菜单以从构建中禁用saa7164驱动程序。 层次结构应类似于“设备驱动程序”->“多媒体驱动程序”->“ VIDEO4LINUX / DVB驱动程序”->“ PCI板”(我认为PCIe没有单独的子菜单),然后禁用saa7164的驱动程序。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.