2013-11-29 1 views
0

xen-4.2.3에서 tools/qemu-xen을 빌드 할 때 오류가 발생했습니다.컴파일 할 때 signal.c의 오류 qemu-xen

/home/xen/xen-4.2.3/tools/qemu-xen/linux-user/signal.c:3468:24: error: field ‘info’ has incomplete type 
make[1]: *** [signal.o] Error 1 
make: *** [subdir-cris-linux-user] Error 2 

그리고 그 소스 코드 :

그것은 때 makeqemu-xen을 conplains 첫 번째 참조

3465 struct rt_signal_frame { 
3466   struct siginfo *pinfo; 
3467   void *puc; 
3468   struct siginfo info; 
3469   struct ucontext uc; 
3470   uint8_t retcode[8];  /* Trampoline code. */ 
3471 }; 

가 난 아무것도 잘못 찾을 수 없습니다 가장 유선 일이 필드 info되어 있지 않으며 siginfo으로 변경하면 *pinfo (3466)으로 불만을 제기하는 이유는 무엇입니까?

xen-4.2.2에서도 시도해 보았습니다. 두 컴파일은 공식 tarball을 통해 이루어졌습니다. 다른 누구도 같은 문제를 겪었습니까?

+0

포인터이기 때문에'pinfo '에 대해서 불평하지 않습니다. C에서는 불완전한 타입에 대한 포인터를 만들 수있다. 왜냐하면 컴파일러가 알아야 할 것은 포인터의 크기가 아니라 지시 된 것의 크기이기 때문이다. –

답변

0

그것은이 라인에 대한 불평 :

3468   struct siginfo info; 

당신은 당신의 컴파일 단위 전에 어딘가에

#include <siginfo.h> 

을 했습니까? 그리고 이것은 당신의 포함 경로에 있습니까?

관련 문제