arm용 gcc로 컴파일중 videodev.h와 videodev2.h에서 에러가 발생합니다.
arm-linux-gcc -o armvideotest test.c -I/home/jaeheon/uvcvideo/linux/include
In file included from /usr/lib/gcc/arm-linux/3.4.3/../../../../arm-linux/sys-include/linux/videodev.h:8,
                 from test.c:5:
/usr/lib/gcc/arm-linux/3.4.3/../../../../arm-linux/sys-include/linux/videodev2.h:436: error: parse error before '*' token
/usr/lib/gcc/arm-linux/3.4.3/../../../../arm-linux/sys-include/linux/videodev2.h:438: error: parse error before '*' token
/usr/lib/gcc/arm-linux/3.4.3/../../../../arm-linux/sys-include/linux/videodev2.h:439: error: parse error before '}' token
/usr/lib/gcc/arm-linux/3.4.3/../../../../arm-linux/sys-include/linux/videodev2.h:810: error: field `win' has incomplete type
In file included from test.c:5:
/usr/lib/gcc/arm-linux/3.4.3/../../../../arm-linux/sys-include/linux/videodev.h:225: error: parse error before '*' token
/usr/lib/gcc/arm-linux/3.4.3/../../../../arm-linux/sys-include/linux/videodev.h:226: error: conflicting types for 'clipcount'
/usr/lib/gcc/arm-linux/3.4.3/../../../../arm-linux/sys-include/linux/videodev2.h:437: error: previous declaration of 'clipcount' was here
/usr/lib/gcc/arm-linux/3.4.3/../../../../arm-linux/sys-include/linux/videodev.h:232: error: parse error before '}' token
make: *** [arm] 오류 1
각 행을 찾아보면 다음과 같습니다. (에러난 곳을 굵은 표시하였습니다.)
원래 프로그램 test.c에서 #include 만을 했는데도 이런 에러가 발생하니.. 막막하기만 합니다.
어떻게 해야하나요?
videodev2.h (431~439)
struct v4l2_window
{
	struct v4l2_rect        w;
	enum v4l2_field  	field;
	__u32			chromakey;
<span>	struct v4l2_clip	__user *clips;</span>
	__u32			clipcount;
	<span>void			__user *bitmap;</span>
};videodev2.h (804~814)
struct v4l2_format
{
	enum v4l2_buf_type type;
	union
	{
		struct v4l2_pix_format	pix;  // V4L2_BUF_TYPE_VIDEO_CAPTURE
	<span>	struct v4l2_window	win;  // V4L2_BUF_TYPE_VIDEO_OVERLAY</span>
		struct v4l2_vbi_format	vbi;  // V4L2_BUF_TYPE_VBI_CAPTURE
		__u8	raw_data[200];        // user-defined
	} fmt;
};videodev.h  (219~232)
struct video_window
{
	__u32	x,y;			/* Position of window */
	__u32	width,height;		/* Its size */
	__u32	chromakey;
	__u32	flags;
	<span>struct	video_clip __user *clips;	/* Set only */</span>
	<span>int	clipcount;</span>
#define VIDEO_WINDOW_INTERLACE	1
#define VIDEO_WINDOW_CHROMAKEY	16	/* Overlay by chromakey */
#define VIDEO_CLIP_BITMAP	-1
/* bitmap is 1024x625, a '1' bit represents a clipped pixel */
#define VIDEO_CLIPMAP_SIZE	(128 * 625)
<span>};</span>

댓글 달기