At first I thought the problem was that I was using gcc-4, so I installed gcc-3.4.6, but I still get the same errors: gcc-3.4 -Wall -O2 -g -fno-strict-aliasing -I. -I.. -I/tmp/qemu-0.8.1/target-i386 -I/tmp/qemu-0.8.1 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -I/tmp/qemu-0.8.1/fpu -DHAS_AUDIO -I/tmp/qemu-0.8.1/slirp -c -o usb-linux.o/tmp/qemu- 0.8.1/usb-linux.c In file included from /tmp/qemu-0.8.1/usb-linux.c:29: /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 /tmp/qemu-0.8.1/usb-linux.c: In function `usb_host_handle_control': /tmp/qemu-0.8.1/usb-linux.c:91: error: invalid application of `sizeof' to incomplete type `usbdevfs_ctrltransfer' /tmp/qemu-0.8.1/usb-linux.c: In function `usb_host_handle_data': /tmp/qemu-0.8.1/usb-linux.c:110: error: storage size of 'bt' isn't known /tmp/qemu-0.8.1/usb-linux.c:121: error: invalid application of `sizeof' to incomplete type `usbdevfs_bulktransfer' /tmp/qemu-0.8.1/usb-linux.c:110: warning: unused variable `bt' /tmp/qemu-0.8.1/usb-linux.c: In function `usb_host_device_open': /tmp/qemu-0.8.1/usb-linux.c:185: error: storage size of 'ctrl' isn't known /tmp/qemu-0.8.1/usb-linux.c:188: error: invalid application of `sizeof' to incomplete type `usbdevfs_ioctl' /tmp/qemu-0.8.1/usb-linux.c:185: warning: unused variable `ctrl' make[1]: *** [usb-linux.o] Error 1 make[1]: Leaving directory `/tmp/x/i386-softmmu' make: *** [all] Error 1 docbill@docbill003:/tmp/x> make for d in i386-user arm-user armeb-user sparc-user ppc-user mips-user mipsel-user i386-softmmu ppc-softmmu sparc-softmmu x86_64-softmmu mips-softmmu mipsel-softmmu arm-softmmu; do \ make -C $d all || exit 1 ; \ done make[1]: Entering directory `/tmp/x/i386-user' make[1]: Nothing to be done for `all'. make[1]: Leaving directory `/tmp/x/i386-user' make[1]: Entering directory `/tmp/x/arm-user' make[1]: Nothing to be done for `all'. make[1]: Leaving directory `/tmp/x/arm-user' make[1]: Entering directory `/tmp/x/armeb-user' make[1]: Nothing to be done for `all'. make[1]: Leaving directory `/tmp/x/armeb-user' make[1]: Entering directory `/tmp/x/sparc-user' make[1]: Nothing to be done for `all'. make[1]: Leaving directory `/tmp/x/sparc-user' make[1]: Entering directory `/tmp/x/ppc-user' make[1]: Nothing to be done for `all'. make[1]: Leaving directory `/tmp/x/ppc-user' make[1]: Entering directory `/tmp/x/mips-user' make[1]: Nothing to be done for `all'. make[1]: Leaving directory `/tmp/x/mips-user' make[1]: Entering directory `/tmp/x/mipsel-user' make[1]: Nothing to be done for `all'. make[1]: Leaving directory `/tmp/x/mipsel-user' make[1]: Entering directory `/tmp/x/i386-softmmu' gcc-3.4 -Wall -O2 -g -fno-strict-aliasing -I. -I.. -I/tmp/qemu-0.8.1/target-i386 -I/tmp/qemu-0.8.1 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -I/tmp/qemu-0.8.1/fpu -DHAS_AUDIO -I/tmp/qemu-0.8.1/slirp -c -o usb-linux.o/tmp/qemu- 0.8.1/usb-linux.c In file included from /tmp/qemu-0.8.1/usb-linux.c:29: /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 /tmp/qemu-0.8.1/usb-linux.c: In function `usb_host_handle_control': /tmp/qemu-0.8.1/usb-linux.c:91: error: invalid application of `sizeof' to incomplete type `usbdevfs_ctrltransfer' /tmp/qemu-0.8.1/usb-linux.c: In function `usb_host_handle_data': /tmp/qemu-0.8.1/usb-linux.c:110: error: storage size of 'bt' isn't known /tmp/qemu-0.8.1/usb-linux.c:121: error: invalid application of `sizeof' to incomplete type `usbdevfs_bulktransfer' /tmp/qemu-0.8.1/usb-linux.c:110: warning: unused variable `bt' /tmp/qemu-0.8.1/usb-linux.c: In function `usb_host_device_open': /tmp/qemu-0.8.1/usb-linux.c:185: error: storage size of 'ctrl' isn't known /tmp/qemu-0.8.1/usb-linux.c:188: error: invalid application of `sizeof' to incomplete type `usbdevfs_ioctl' /tmp/qemu-0.8.1/usb-linux.c:185: warning: unused variable `ctrl' make[1]: *** [usb-linux.o] Error 1 make[1]: Leaving directory `/tmp/x/i386-softmmu' make: *** [all] Error 1 **