介绍

介绍

我正在尝试在 Ubuntu 16.04 中安装 PS3 摄像头驱动程序,但是使用本教程,执行该命令后make,出现以下错误:

Making all in cpi
make[2]: Entering directory '/home/mona/unicap-0.9.5/cpi'
Making all in v4l
make[3]: Entering directory '/home/mona/unicap-0.9.5/cpi/v4l'
/bin/bash ../../libtool --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../.. -I../include -I../../include    -g -O2 -MT queue.lo -MD -MP -MF .deps/queue.Tpo -c -o queue.lo queue.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../include -I../../include -g -O2 -MT queue.lo -MD -MP -MF .deps/queue.Tpo -c queue.c  -fPIC -DPIC -o .libs/queue.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../include -I../../include -g -O2 -MT queue.lo -MD -MP -MF .deps/queue.Tpo -c queue.c -o queue.o >/dev/null 2>&1
mv -f .deps/queue.Tpo .deps/queue.Plo
/bin/bash ../../libtool --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../.. -I../include -I../../include    -g -O2 -MT v4l.lo -MD -MP -MF .deps/v4l.Tpo -c -o v4l.lo v4l.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../include -I../../include -g -O2 -MT v4l.lo -MD -MP -MF .deps/v4l.Tpo -c v4l.c  -fPIC -DPIC -o .libs/v4l.o
v4l.c:52:28: fatal error: linux/videodev.h: No such file or directory
compilation terminated.
Makefile:387: recipe for target 'v4l.lo' failed
make[3]: *** [v4l.lo] Error 1
make[3]: Leaving directory '/home/mona/unicap-0.9.5/cpi/v4l'
Makefile:315: recipe for target 'all-recursive' failed
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory '/home/mona/unicap-0.9.5/cpi'
Makefile:414: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/home/mona/unicap-0.9.5'
Makefile:344: recipe for target 'all' failed
make: *** [all] Error 2

当前路径是:

$ pwd
/home/mona/unicap-0.9.5

我应该如何修复这个问题或者安装 PS3 摄像头的驱动程序?

当尝试 smallapp 时,我没有得到答案中提到的视频。 在此处输入图片描述

答案1

介绍

请注意视频捕获设备的统一接口在 Ubuntu 中打包为libunicap2-dev包裹。

但看起来您正在修补 2008 年的 0.9.5 版本。

1. 编译

因此您应该从启用源代码包软件与更新(或software-properties-gtk命令)

软件与更新

并使用以下方式安装所有构建依赖项

sudo apt-get build-dep libunicap2-dev 

如果你需要 X11 支持 (GTK-widget),请安装 Xv 库

sudo apt-get install libxv-dev

然后按照指南进行操作:

cd ~/Downloads
wget http://unicap-imaging.org/downloads/unicap-0.9.5.tar.gz
tar -xf unicap-0.9.5.tar.gz
cd unicap-0.9.5
wget http://kaswy.free.fr/sites/default/files/download/ps3eye/unicap/unicap-gspca.patch
patch -p0 < unicap-gspca.patch cpi/v4l2cpi/v4l2.c
./configure

1.1 修补当前 Ubuntu 版本

正如您所知,自博客文章发布以来,一些包含路径已发生更改(2010 年早晚)。所以我们需要修补它们:

cpi/v4l/v4l.c

cat << EOF > xenial-v4l-p1.patch

--- ~/Downloads/unicap-0.9.5/cpi/v4l/v4l.c
+++ ~/Downloads/unicap-0.9.12/cpi/v4l/v4l.c
@@ -49,7 +49,7 @@
 #endif
 #include <debug.h>

-#include <linux/videodev.h>
+#include <libv4l1-videodev.h>
 #include <linux/videodev2.h> // for v4l2 checks

 #include "v4l.h"

EOF

patch -p0 < xenial-v4l-p1.patch cpi/v4l/v4l.c

cpi/v4l2cpi/uvcvideo.h

cat << EOF > xenial-v4l-p2.patch
--- ~/Downloads/unicap-0.9.5/cpi/v4l2cpi/uvcvideo.h
+++ ~/Downloads/unicap-0.9.12/cpi/v4l2cpi/uvcvideo.h
@@ -2,7 +2,7 @@
 #define _USB_VIDEO_H_

 #include <linux/kernel.h>
-#include <linux/videodev.h>
+#include <libv4l1-videodev.h>

 #include "uvc_compat.h"


EOF

patch -p0 < xenial-v4l-p2.patch cpi/v4l2cpi/uvcvideo.h

然后制作并安装:

make
sudo make install

2. 测试

例子似乎位于例子,我们可以用以下方法编译它们:

sudo apt-get install libsdl-dev libjpeg-turbo8-dev
cd examples
make

一个有趣的是 GTK 应用程序示例/unicapgtk/smallapp

env LD_LIBRARY_PATH=/usr/local/lib/ unicapgtk/smallapp/smallapp

您也可以尝试获取有关相机的信息

env LD_LIBRARY_PATH=/usr/local/lib/ c/device_info/device_info

要观看视频,您可能需要安装优视,但我不知道该怎么做。

相关内容