C++ Linux上使用v4l2:v4l2官方示例的C网络摄像头库

C++ Linux上使用v4l2:v4l2官方示例的C网络摄像头库,c++,c,linux,v4l2,C++,C,Linux,V4l2,我正试图编写一个C程序来访问网络摄像头并拍摄一些照片,然后存储它们,因此我使用的是V4L2API 我下载了这个项目,安装了它 当测试给出的一个示例时,我得到以下错误 v4l2grab.c:329:60: error: expected ‘,’ or ‘;’ before ‘V4L_UTILS_VERSION’ const char *argp_program_version = "V4L2 grabber version " V4L_UTILS_VERSION ;

我正试图编写一个C程序来访问网络摄像头并拍摄一些照片,然后存储它们,因此我使用的是V4L2API

我下载了这个项目,安装了它 当测试给出的一个示例时,我得到以下错误

v4l2grab.c:329:60: error: expected ‘,’ or ‘;’ before ‘V4L_UTILS_VERSION’
const char *argp_program_version = "V4L2 grabber version " V4L_UTILS_VERSION ;
                                                           ^
我用的是ubuntu,用于编译

 gcc v4l2grab.c -lv4l2
为了得到v4l2,我所做的是:

sudo apt-get install libv4l-dev
sudo apt-get build-dep libv4l-dev
git clone git://linuxtv.org/v4l-utils.git
cd v4l-utils
# Matching the installed version of dpkg -s libv4l-dev
git checkout v4l-utils-1.10.0
./bootstrap.sh
./configure
make
cd contrib/tests
make
为此,我遵循第三个问题答案的解释:


知道如何修复此问题吗?

看起来缺少
#define
,因此字符串粘贴不起作用,因为
V4L\u UTILS\u VERSION
没有扩展为字符串文字。但我没有修改任何内容