交叉编译报错 unknown type name 'cap_t'
大家好,我正在交叉编译lxc的源代码到andorid上,使用的交叉编译工具是arm-linux-androideabi-gcc,电脑上是ubuntu系统。
make的时候报了这样一堆错:
caps.c: In function 'lxc_caps_down':
caps.c:46:2: error: unknown type name 'cap_t'
cap_t caps;
^
caps.c:54:2: warning: implicit declaration of function 'cap_get_proc' [-Wimplicit-function-declaration]
caps = cap_get_proc();
^
caps.c:60:2: warning: implicit declaration of function 'cap_clear_flag' [-Wimplicit-function-declaration]
ret = cap_clear_flag(caps, CAP_EFFECTIVE);
^
caps.c:60:29: error: 'CAP_EFFECTIVE' undeclared (first use in this function)
ret = cap_clear_flag(caps, CAP_EFFECTIVE);
^
caps.c:60:29: note: each undeclared identifier is reported only once for each function it appears in
caps.c:66:2: warning: implicit declaration of function 'cap_set_proc' [-Wimplicit-function-declaration]
ret = cap_set_proc(caps);
^
caps.c:73:2: warning: implicit declaration of function 'cap_free' [-Wimplicit-function-declaration]
cap_free(caps);
^
caps.c: In function 'lxc_caps_up':
caps.c:79:2: error: unknown type name 'cap_t'
cap_t caps;
^
caps.c:80:2: error: unknown type name 'cap_value_t'
cap_value_t cap;
^
caps.c:96:3: error: unknown type name 'cap_flag_value_t'
cap_flag_value_t flag;
^
caps.c:98:3: warning: implicit declaration of function 'cap_get_flag' [-Wimplicit-function-declaration]
ret = cap_get_flag(caps, cap, CAP_PERMITTED, &flag);
^
caps.c:98:33: error: 'CAP_PERMITTED' undeclared (first use in this function)
ret = cap_get_flag(caps, cap, CAP_PERMITTED, &flag);
^
caps.c:109:3: warning: implicit declaration of function 'cap_set_flag' [-Wimplicit-function-declaration]
ret = cap_set_flag(caps, CAP_EFFECTIVE, 1, &cap, flag);
^
caps.c:109:28: error: 'CAP_EFFECTIVE' undeclared (first use in this function)
ret = cap_set_flag(caps, CAP_EFFECTIVE, 1, &cap, flag);
^
Makefile:1459: recipe for target 'liblxc_so-caps.o' failed
make[3]: *** [liblxc_so-caps.o] Error 1
make[3]: Leaving directory '/home/wjzeng/WorkSpace/LxC/lxc-1.0.9/src/lxc'
Makefile:404: recipe for target 'all-recursive' failed
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory '/home/wjzeng/WorkSpace/LxC/lxc-1.0.9/src'
Makefile:349: recipe for target 'all' failed
make[1]: *** [all] Error 2
make[1]: Leaving directory '/home/wjzeng/WorkSpace/LxC/lxc-1.0.9/src'
Makefile:495: recipe for target 'all-recursive' failed
make: *** [all-recursive] Error 1
我的系统上已经装了libcap-dev。
不知道是什么问题?希望各位大神帮帮我,感激不尽!