簡體   English   中英

v4l2在Debian 8上構建錯誤

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM