在调试程序的时候出现很奇怪的头文件问题
最近小弟是在linux环境下通过video4linux和qt来完成视频抓图和显示功能,程序调试时出现了很奇怪的头文件错误
如下:
In file included from capture.h:5,
from main.cc:6:
/usr/include/sys/types.h:62: error: conflicting declaration 'typedef __dev_t dev_t'
/usr/include/linux/types.h:21: error: 'dev_t' has a previous declaration as `typedef __kernel_dev_t dev_t' 我并没有include /linux/types.h这个头文件,怎么会报错呢????想不通
/usr/include/sys/types.h:62: error: declaration of `typedef __dev_t dev_t'
/usr/include/linux/types.h:21: error: conflicts with previous declaration `typedef __kernel_dev_t dev_t'
/usr/include/sys/types.h:62: error: declaration of `typedef __dev_t dev_t'
/usr/include/linux/types.h:21: error: conflicts with previous declaration `typedef __kernel_dev_t dev_t'
/usr/include/sys/types.h:67: error: conflicting declaration 'typedef __gid_t gid_t'
/usr/include/linux/types.h:48: error: 'gid_t' has a previous declaration as `typedef __kernel_gid_t gid_t'
/usr/include/sys/types.h:67: error: declaration of `typedef __gid_t gid_t'
/usr/include/linux/types.h:48: error: conflicts with previous declaration `typedef __kernel_gid_t gid_t'
/usr/include/sys/types.h:67: error: declaration of `typedef __gid_t gid_t'
/usr/include/linux/types.h:48: error: conflicts with previous declaration `typedef __kernel_gid_t gid_t'
/usr/include/sys/types.h:72: error: conflicting declaration 'typedef __mode_t mode_t'
/usr/include/linux/types.h:23: error: 'mode_t' has a previous declaration as `typedef __kernel_mode_t mode_t'
/usr/include/sys/types.h:72: error: declaration of `typedef __mode_t mode_t'
/usr/include/linux/types.h:23: error: conflicts with previous declaration `typedef __kernel_mode_t mode_t'
/usr/include/sys/types.h:72: error: declaration of `typedef __mode_t mode_t'
/usr/include/linux/types.h:23: error: conflicts with previous declaration `typedef __kernel_mode_t mode_t'
/usr/include/sys/types.h:77: error: conflicting declaration 'typedef __nlink_t nlink_t'
/usr/include/linux/types.h:24: error: 'nlink_t' has a previous declaration as `typedef __kernel_nlink_t nlink_t'
/usr/include/sys/types.h:77: error: declaration of `typedef __nlink_t nlink_t'
/usr/include/linux/types.h:24: error: conflicts with previous declaration `typedef __kernel_nlink_t nlink_t'
/usr/include/sys/types.h:77: error: declaration of `typedef __nlink_t nlink_t'
/usr/include/linux/types.h:24: error: conflicts with previous declaration `typedef __kernel_nlink_t nlink_t'
/usr/include/sys/types.h:82: error: conflicting declaration 'typedef __uid_t uid_t'
/usr/include/linux/types.h:47: error: 'uid_t' has a previous declaration as `typedef __kernel_uid_t uid_t'
/usr/include/sys/types.h:82: error: declaration of `typedef __uid_t uid_t'
/usr/include/linux/types.h:47: error: conflicts with previous declaration `typedef __kernel_uid_t uid_t'
/usr/include/sys/types.h:82: error: declaration of `typedef __uid_t uid_t'
/usr/include/linux/types.h:47: error: conflicts with previous declaration `typedef __kernel_uid_t uid_t'
In file included from /usr/include/sys/types.h:216,
from capture.h:5,
from main.cc:6:
/usr/include/sys/select.h:78: error: conflicting declaration 'typedef struct fd_set fd_set'
/usr/include/linux/types.h:20: error: 'fd_set' has a previous declaration as `typedef struct __kernel_fd_set fd_set'//这两个头文件我也没有打开
/usr/include/sys/select.h:78: error: declaration of `typedef struct fd_set fd_set'
/usr/include/linux/types.h:20: error: conflicts with previous declaration `typedef struct __kernel_fd_set fd_set'
/usr/include/sys/select.h:78: error: declaration of `typedef struct fd_set fd_set'
/usr/include/linux/types.h:20: error: conflicts with previous declaration `typedef struct __kernel_fd_set fd_set'
/usr/include/sys/select.h:78: error: declaration of `typedef struct fd_set fd_set'
/usr/include/linux/types.h:20: error: conflicts with previous declaration `typedef struct __kernel_fd_set fd_set'
In file included from capture.h:15,
from main.cc:6:
display.h:9:21: capture.h: No such file or directory//在display.h中已经打开capture.h这个头文件了
In file included from main.cc:7:
display.h:15: error: redefinition of `class MyMainWindow'
display.h:15: error: previous definition of `class MyMainWindow'
main.cc: In function `int main(int, char**)':
main.cc:14: error: no matching function for call to `capture::capture(MyMainWindow*&)'
capture.h:26: note: candidates are: capture::capture(const capture&)
capture.h:28: note: capture::capture(MyMainWindow)
make: *** [main.o] Error 1
实现想不通所以斗胆上来问一下,麻烦各位帮忙看一下