[oe] Build of qemu-native fails.

Khem Raj raj.khem at gmail.com
Sat Dec 6 19:10:06 UTC 2008


On Sat, Dec 6, 2008 at 12:16 AM, Ulf Samuelsson <ulf at atmel.com> wrote:
> Building the Angstrom for at91sam9263ek:
>
> The build of qemu-native fails!
>
> The normal build uses qemu-native-svn which fails, then I tried
> qemu-native-0.9.1 with the same result.
>
> In ./work/armv5te-angstrom-linux-gnueabi/linux-libc-headers-2.6.23-r3/linux-2.6.23/include/linux/usbdevice_fs.h
> it looks like:
> struct usbdevfs_ctrltransfer {
>        __u8 bRequestType;
>        __u8 bRequest;
>        __u16 wValue;
>        __u16 wIndex;
>        __u16 wLength;
>        __u32 timeout;  /* in milliseconds */
>        void __user *data;
> };
>
> It does not like the __user in "void __user *data"
>
> In ./work/armv5te-angstrom-linux-gnueabi/linux-libc-headers-2.6.23-r3/image/usr/include/linux/usbdevice_fs.h
> it looks the same as in recent kernels:
>
> /* usbdevfs ioctl codes */
>
> struct usbdevfs_ctrltransfer {
>        __u8 bRequestType;
>        __u8 bRequest;
>        __u16 wValue;
>        __u16 wIndex;
>        __u16 wLength;
>        __u32 timeout;  /* in milliseconds */
>        void *data;
> };
>
>
> If I extract linux-2.6.23 and do
> $ make ARCH=arm INSTALL_HDR_PATH=../headers headers_install
> I don't get the "__user" inside this header file,
>
> Anyone knows why?

Thats the difference between raw headers and the saniized headers. By
doing  make ARCH=arm INSTALL_HDR_PATH=../headers headers_install you
get sanitized headers.
problem seems to be in  /usr/include/linux/usbdevice_fs.h thats on
your build system. check that file and it might not be insalled
correctly. What are you using for a build machine.

Thx

-Khem

>
> ----
> Error message from qemu-native-0.9.1 build below:
>
>
> gcc-3.4.6
> -isystem/home/ulf/projects/OE/build/tmp/staging/i686-linux/usr/include
> -O2 -Wall -O2 -g -fno-strict-aliasing
> -isystem/home/ulf/projects/OE/build/tmp/staging/i686-linux/usr/include
> -I.
> -I/home/ulf/projects/OE/build/tmp/work/i686-linux/qemu-native-0.9.1-r7/qemu-0.9.1 -MMD -MP -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -I/home/ulf/projects/OE/build/tmp/work/i686-linux/qemu-native-0.9.1-r7/qemu-0.9.1/slirp    -c -o usb-linux.o usb-linux.c
> | 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:183: warning: unused variable `ctrl'
> | 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:309: warning: unused variable `bt'
> | 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'
> | make: *** [usb-linux.o] Error 1
> | FATAL: oe_runmake failed
> NOTE: Task
> failed: /home/ulf/projects/OE/build/tmp/work/i686-linux/qemu-native-0.9.1-r7/temp/log.do_compile.12353
> NOTE: package qemu-native-0.9.1-r7: task do_compile: failed
> ERROR: TaskFailed event exception, aborting
> NOTE: package qemu-native-0.9.1: failed
> ERROR: Build
> of /home/ulf/projects/OE/openembedded/packages/qemu/qemu-native_0.9.1.bb
> do_compile failed
> ERROR: Task 7
> (/home/ulf/projects/OE/openembedded/packages/qemu/qemu-native_0.9.1.bb,
> do_compile) failed
> NOTE: Tasks Summary: Attempted 6 tasks of which 0 didn't need to be
> rerun and 1 failed.
> ERROR:
> '/home/ulf/projects/OE/openembedded/packages/qemu/qemu-native_0.9.1.bb'
> failed
> NOTE: build 200812060707: completed
>
> --
> Best Regards,
> Ulf Samuelsson          mail:   ulf at atmel.com
> Atmel Nordic AB
> Box 2033, 174 52 Sundbyberg
> Kavallerivägen 24, 174 58 Sundbyberg
> Sweden
> Tel:    +46 8 441 54 22 GSM:    +46 706 224457
>
>
>
>
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel at lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel
>


More information about the Openembedded-devel mailing list