From: Khem Raj <raj.khem@gmail.com>
To: openembedded-devel@lists.openembedded.org
Subject: Re: problem building uclibc + udev
Date: Tue, 25 Aug 2009 19:03:42 -0700 [thread overview]
Message-ID: <20090826020342.GB5705@gmail.com> (raw)
In-Reply-To: <f96d234e0908251411s5ac89a67v223cb2240b81fe39@mail.gmail.com>
On (25/08/09 17:11), Cliff Brake wrote:
> I'm running into the following issue building udev:
>
> NOTE: Running task 606 of 631 (ID: 8,
> /build/oe/oe-testing/openembedded/recipes/udev/udev_141.bb,
> do_compile)
> ERROR: function do_compile failed
> ERROR: log data follows
> (/build/oe/oe-testing/build/angstrom-2008.1/tmp/work/armv7a-angstrom-linux-uclibcgnueabi/udev-141-r11/temp/log.do_compile.14745)
> | NOTE: make -j 5
> | make all-recursive
> | make[1]: Entering directory
> `/build/oe/oe-testing/build/angstrom-2008.1/tmp/work/armv7a-angstrom-linux-uclibcgnueabi/udev-141-r11/udev-141'
> | Making all in udev
> | make[2]: Entering directory
> `/build/oe/oe-testing/build/angstrom-2008.1/tmp/work/armv7a-angstrom-linux-uclibcgnueabi/udev-141-r11/udev-141/udev'
> | Making all in lib
> | make[3]: Entering directory
> `/build/oe/oe-testing/build/angstrom-2008.1/tmp/work/armv7a-angstrom-linux-uclibcgnueabi/udev-141-r11/udev-141/udev/lib'
> | make[3]: Nothing to be done for `all'.
> | make[3]: Leaving directory
> `/build/oe/oe-testing/build/angstrom-2008.1/tmp/work/armv7a-angstrom-linux-uclibcgnueabi/udev-141-r11/udev-141/udev/lib'
> | make[3]: Entering directory
> `/build/oe/oe-testing/build/angstrom-2008.1/tmp/work/armv7a-angstrom-linux-uclibcgnueabi/udev-141-r11/udev-141/udev'
> | /bin/sh ../arm-angstrom-linux-uclibcgnueabi-libtool --tag=CC
> --mode=link arm-angstrom-linux-uclibcgnueabi-gcc -march=armv7-a
> -mtune=cortex-a8 -mfpu=neon -mfloat-abi=softfp
> -isystem/build/oe/oe-testing/build/angstrom-2008.1/tmp/staging/armv7a-angstrom-linux-uclibcgnueabi/usr/include
> -fexpensive-optimizations -fomit-frame-pointer -frename-registers -O2
> -ggdb3 -Wl,--as-needed
> -L/build/oe/oe-testing/build/angstrom-2008.1/tmp/staging/armv7a-angstrom-linux-uclibcgnueabi/usr/lib
> -Wl,-rpath-link,/build/oe/oe-testing/build/angstrom-2008.1/tmp/staging/armv7a-angstrom-linux-uclibcgnueabi/usr/lib
> -Wl,-O1 -Wl,--hash-style=gnu -o udevd udev-event.o udev-watch.o
> udev-node.o udev-rules.o udev-util.o libudev.o libudev-list.o
> libudev-util.o libudev-device.o libudev-device-db-write.o
> libudev-monitor.o libudev-enumerate.o libudev-queue.o libudev-ctrl.o
> udevd.o
> | arm-angstrom-linux-uclibcgnueabi-libtool: link:
> arm-angstrom-linux-uclibcgnueabi-gcc -march=armv7-a -mtune=cortex-a8
> -mfpu=neon -mfloat-abi=softfp
> -isystem/build/oe/oe-testing/build/angstrom-2008.1/tmp/staging/armv7a-angstrom-linux-uclibcgnueabi/usr/include
> -fexpensive-optimizations -fomit-frame-pointer -frename-registers -O2
> -ggdb3 -Wl,--as-needed -Wl,-rpath-link
> -Wl,/build/oe/oe-testing/build/angstrom-2008.1/tmp/staging/armv7a-angstrom-linux-uclibcgnueabi/usr/lib
> -Wl,-O1 -Wl,--hash-style=gnu -o udevd udev-event.o udev-watch.o
> udev-node.o udev-rules.o udev-util.o libudev.o libudev-list.o
> libudev-util.o libudev-device.o libudev-device-db-write.o
> libudev-monitor.o libudev-enumerate.o libudev-queue.o libudev-ctrl.o
> udevd.o -L/build/oe/oe-testing/build/angstrom-2008.1/tmp/staging/armv7a-angstrom-linux-uclibcgnueabi/usr/lib
> | udevd.o: In function `main':
> | /build/oe/oe-testing/build/angstrom-2008.1/tmp/work/armv7a-angstrom-linux-uclibcgnueabi/udev-141-r11/udev-141/udev/udevd.c:978:
> undefined reference to `ppoll'
> | collect2: ld returned 1 exit status
> | make[3]: *** [udevd] Error 1
> | make[3]: Leaving directory
> `/build/oe/oe-testing/build/angstrom-2008.1/tmp/work/armv7a-angstrom-linux-uclibcgnueabi/udev-141-r11/udev-141/udev'
> | make[2]: *** [all-recursive] Error 1
> | make[2]: Leaving directory
> `/build/oe/oe-testing/build/angstrom-2008.1/tmp/work/armv7a-angstrom-linux-uclibcgnueabi/udev-141-r11/udev-141/udev'
> | make[1]: *** [all-recursive] Error 1
> | make[1]: Leaving directory
> `/build/oe/oe-testing/build/angstrom-2008.1/tmp/work/armv7a-angstrom-linux-uclibcgnueabi/udev-141-r11/udev-141'
> | make: *** [all] Error 2
> | FATAL: oe_runmake failed
>
> It appears that uclibc is being built without ppoll as the headers
> don't have it. The beagleboard kernel is patched
> (http://cgit.openembedded.org/cgit.cgi/openembedded/commit/?id=1f0d91e152f16fbd40bb2fb3c44a30d774d4dede)
> to include ppoll, and the headers are modified as such:
>
> cbrake@happy:/build/oe/oe-testing/build/angstrom-2008.1/tmp/staging$
> searchc ppoll
> ./armv7a-angstrom-linux-uclibcgnueabi/usr/include/asm/unistd.h:
> /* 336 for ppoll */
> ./beagleboard-angstrom-linux-gnueabi/kernel/arch/arm/include/asm/unistd.h:#define
> __NR_ppoll (__NR_SYSCALL_BASE+336)
> ./beagleboard-angstrom-linux-gnueabi/kernel/include/linux/syscalls.h:asmlinkage
> long sys_ppoll(struct pollfd __user *, unsigned int,
> ./beagleboard-angstrom-linux-gnueabi/kernel/include/asm-arm/unistd.h:#define
> __NR_ppoll (__NR_SYSCALL_BASE+336)
> ./armv7a-angstrom-linux-gnueabi/usr/include/asm/unistd.h:
> /* 336 for ppoll */
> ./armv7a-angstrom-linux-gnueabi/usr/include/sys/poll.h:extern int
> ppoll (struct pollfd *__fds, nfds_t __nfds,
>
> However, the headers are only modified in the kernel include
> directory. I suspect uclibc is getting unistd.h from the usr/include
> directory which does not have __NR_ppoll defined. What is the best
> way to fix this. I suspect we need to tell uclibc to look at the
> kernel headers?
it already does look into kernel headers to configure its system calls.
All you need is to wireup this syscall in kernel and also in
linux-libc-headers. IOW Port
http://www.spinics.net/lists/arm-kernel/msg38114.html to both above
places.
Thx
-Khem
>
> Thanks,
> Cliff
>
> _______________________________________________
> Openembedded-devel mailing list
> Openembedded-devel@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-devel
next prev parent reply other threads:[~2009-08-26 2:21 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-08-25 21:11 problem building uclibc + udev Cliff Brake
2009-08-26 2:03 ` Khem Raj [this message]
2009-08-29 20:38 ` Cliff Brake
2009-08-30 15:01 ` Phil Blundell
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20090826020342.GB5705@gmail.com \
--to=raj.khem@gmail.com \
--cc=openembedded-devel@lists.openembedded.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.