From mboxrd@z Thu Jan 1 00:00:00 1970 From: Pat Campbell Subject: Re: build problem with new ioemu Date: Fri, 18 Jul 2008 07:00:07 -0600 Message-ID: <488093D7.4060608@novell.com> References: <200807181410.50965.Christoph.Egger@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <200807181410.50965.Christoph.Egger@amd.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: Christoph Egger Cc: xen-devel@lists.xensource.com List-Id: xen-devel@lists.xenproject.org Christoph Egger wrote: > Hi! > > The new ioemu from the git tree does not build on a 64bit SLES 10SP2: > > In file included from usb-linux.c:31: > /usr/include/linux/usbdevice_fs.h:49: error: variable or field `__user' > declared void > /usr/include/linux/usbdevice_fs.h:49: error: syntax error before '*' token > /usr/include/linux/usbdevice_fs.h:56: error: variable or field `__user' > declared void > /usr/include/linux/usbdevice_fs.h:56: error: syntax error before '*' token > /usr/include/linux/usbdevice_fs.h:66: error: variable or field `__user' > declared void > /usr/include/linux/usbdevice_fs.h:66: error: syntax error before '*' token > /usr/include/linux/usbdevice_fs.h:100: error: variable or field `__user' > declared void > /usr/include/linux/usbdevice_fs.h:100: error: syntax error before '*' token > /usr/include/linux/usbdevice_fs.h:109: error: syntax error before '}' token > /usr/include/linux/usbdevice_fs.h:116: error: variable or field `__user' > declared void > /usr/include/linux/usbdevice_fs.h:116: error: syntax error before '*' token > usb-linux.c: In function `usb_host_update_interfaces': > usb-linux.c:183: error: storage size of 'ctrl' isn't known > usb-linux.c:187: error: invalid application of `sizeof' to incomplete type > `usbdevfs_ioctl' > usb-linux.c: In function `usb_host_handle_control': > usb-linux.c:283: error: invalid application of `sizeof' to incomplete type > `usbdevfs_ctrltransfer' > usb-linux.c: In function `usb_host_handle_data': > usb-linux.c:309: error: storage size of 'bt' isn't known > usb-linux.c:325: error: invalid application of `sizeof' to incomplete type > `usbdevfs_bulktransfer' > usb-linux.c: In function `usb_host_handle_isoch': > usb-linux.c:414: error: invalid application of `sizeof' to incomplete type > `usbdevfs_urb' > usb-linux.c:421: error: dereferencing pointer to incomplete type > usb-linux.c:422: error: dereferencing pointer to incomplete type > usb-linux.c:423: error: dereferencing pointer to incomplete type > usb-linux.c:424: error: dereferencing pointer to incomplete type > usb-linux.c:425: error: dereferencing pointer to incomplete type > usb-linux.c:426: error: dereferencing pointer to incomplete type > usb-linux.c:427: error: dereferencing pointer to incomplete type > usb-linux.c:428: error: dereferencing pointer to incomplete type > usb-linux.c:429: error: dereferencing pointer to incomplete type > usb-linux.c:433: error: dereferencing pointer to incomplete type > usb-linux.c:435: error: dereferencing pointer to incomplete type > usb-linux.c:436: error: dereferencing pointer to incomplete type > usb-linux.c:437: error: dereferencing pointer to incomplete type > usb-linux.c:438: error: dereferencing pointer to incomplete type > usb-linux.c:439: error: dereferencing pointer to incomplete type > usb-linux.c:440: error: invalid application of `sizeof' to incomplete type > `usbdevfs_urb' > usb-linux.c:475: error: dereferencing pointer to incomplete type > usb-linux.c: In function `usb_linux_update_endp_table': > usb-linux.c:506: error: invalid application of `sizeof' to incomplete type > `usbdevfs_ctrltransfer' > usb-linux.c:547: error: invalid application of `sizeof' to incomplete type > `usbdevfs_ctrltransfer' > gcc -Wall -O2 -g -fno-strict-aliasing -O2 -fomit-frame-pointer -m64 -fno-strict-aliasing -std=gnu99 -Wall -Wstrict-prototypes -Wno-unused-value -Wdeclaration-after-statement -D__XEN_TOOLS__ -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -DUSE_SSE2=1 -msse2 -Wno-unused -Wno-declaration-after-statement -m64 -I/xen/xen-unstable.hg/tools/..//tools/libxc -I/xen/xen-unstable.hg/tools/..//tools/xenstore -I/xen/xen-unstable.hg/tools/..//tools/include -I/xen/xen-unstable.hg/tools/..//tools/blktap/lib -I. -I/xen/xen-unstable.hg/tools/ioemu-dir -MMD -MP -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -c -o > usb-serial.o /xen/xen-unstable.hg/tools/ioemu-dir/hw/usb-serial.c > make[3]: *** [usb-linux.o] Error 1 > make[3]: *** Waiting for unfinished jobs.... > make[3]: *** wait: No child processes. Stop. > make[2]: *** [subdir-install-ioemu-dir] Error 2 > make[2]: Leaving directory `/xen/xen-unstable.hg/tools' > make[1]: *** [subdirs-install] Error 2 > make[1]: Leaving directory `/xen/xen-unstable.hg/tools' > make: *** [install-tools] Error 2 > > > I added the following to get past this. --- a/usb-linux.c 2008-07-18 06:54:47.000000000 -0600 +++ b/usb-linux.c 2008-07-18 06:09:31.000000000 -0600 @@ -28,6 +28,7 @@ #if defined(__linux__) #include #include +#include #include #include Old code did: /* Some versions of usbdevice_fs.h need __user to be defined for them. */ /* This may (harmlessly) conflict with a definition in linux/compiler.h. */ #define __user #include Not sure which is the better solution Pat