gcp上的v4l2loopback无法depmod /编译

时间:2019-08-05 19:42:29

标签: docker google-cloud-platform debian v4l2loopback

我正在尝试使用v4l2loopback在gcp实例内的docker容器上制作伪造的网络摄像头。

我在debian:stretch内核中使用4.9.0-9-amd64

到目前为止,以下是我尝试编译v4l2loopback的步骤:

  • `apt install linux-headers-$(uname -r)`以安装适当的头文件
  • `apt-get install kmod`和`apt-get install make`这样我可以使用`make`和`depmod`功能
  • `apt-get install aufs-dkms aufs-tools aufs-dev`以获取`modules.builtin.bin`文件

经过上述步骤后,我克隆了v4l2loopback存储库,运行make && sudo make install命令,最后运行depmod -a命令。但是当我运行depmod -a时,得到了以下警告:

depmod: WARNING: could not open /lib/modules/4.9.0-9-amd64/modules.order: No such file or directory
depmod: WARNING: could not open /lib/modules/4.9.0-9-amd64/modules.builtin: No such file or directory

当我手动检查它时,modules.order目录中没有modules.builtin/lib/modules/4.9.0-9-amd64

因此,当我尝试使用modprobe v4l2loopback加载v4l2loopback模块时,它给了我这样的错误:

modprobe: ERROR: ../libkmod/libkmod.c:514 lookup_builtin_file() could not open builtin file '/lib/modules/4.9.0-9-amd64/modules.builtin.bin'
modprobe: ERROR: could not insert 'v4l2loopback': Operation not permitted

我该如何解决?或者如何在我的环境中正确编译v4l2loopback

1 个答案:

答案 0 :(得分:0)

就我而言,我意识到只能通过insmod命令而不是modprobe加载模块,您可以使用了。 Here您可以找到有关这些方法之间差异的解释。

示例:sudo insmod PATH/TO/THE/FILE/v4l2loopback.ko devices=2 card_label="camera1","camera2" exclusive_caps=1,1