| Summary: | alsa-utils fails to crosscompile | ||
|---|---|---|---|
| Product: | [Build System, Metadata & Runtime] OE-Core | Reporter: | Petr Baudis <pasky> |
| Component: | core | Assignee: | Robert Yang <liezhi.yang> |
| Status: | RESOLVED FIXED | QA Contact: | |
| Severity: | normal | ||
| Priority: | Medium | CC: | alexandre.belloni, bluelightning, meta.mr.watcher, meta.watcher, poky.bs.watcher, poky.watcher |
| Version: | 1.6.2 | ||
| Target Milestone: | 1.7.1 | ||
| Hardware: | Other | ||
| OS: | arm | ||
| Whiteboard: | |||
| OS type for building Yocto: | --- | Type of Regression: | --- |
| Verified: | Documentation change: | No (bug/feature does not impact docs) | |
This is actually solved by http://patchwork.openembedded.org/patch/80727/ that should get merged for 1.7. The aforementioned fix was merged into master and dizzy (for 1.7): http://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/?id=448549b7dbed17f78ae80b3c780318ba5701c0ba |
I'm trying to build the atmel-xplained-demo-image bitbake target, but this fails through some dependencies on alsa-utils. The surface failure is: ERROR: Task 2030 (/home/morix/devel/yocto/poky/meta/recipes-multimedia/alsa/alsa-utils_1.0.28.bb, do_configure) failed with exit code '1' In the log file, the failure is... checking for new_panel in -lpanelw... no configure: error: panelw library not found ...and in more detail: configure:8717: checking for new_panel in -lpanelw configure:8742: arm-poky-linux-gnueabi-gcc -march=armv7-a -marm -mthumb-interwork -mfloat-abi=hard -mtune=cortex-a5 --sysroot=/home/pasky/byz/pubnub-embeddedapi/atmel-sama5d3/poky/poky/build-atmel/tmp/sysroots/sama5d3xek -o conftest -O2 -pipe -g -feliminate-unused-debug-types -I/home/pasky/byz/pubnub-embeddedapi/atmel-sama5d3/poky/poky/build-atmel/tmp/sysroots/x86_64-linux/usr/include/ncursesw -I/home/pasky/byz/pubnub-embeddedapi/atmel-sama5d3/poky/poky/build-atmel/tmp/sysroots/x86_64-linux/usr/include -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -L/home/pasky/byz/pubnub-embeddedapi/atmel-sama5d3/poky/poky/build-atmel/tmp/sysroots/x86_64-linux/usr/lib conftest.c -lpanelw -lncursesw -ltinfo -lasound -lm -ldl -lpthread >&5 /home/pasky/byz/pubnub-embeddedapi/atmel-sama5d3/poky/poky/build-atmel/tmp/sysroots/x86_64-linux/usr/lib/libpanelw.so: file not recognized: File format not recognized collect2: error: ld returned 1 exit status So the problem seems to be that arm (target) gcc is trying to link against x86_64 (host) libpanelw library... It seems to me it's correct to use the target gcc but I don't know why it's linking against the host library. Earlier message of the configure script: checking for curses compiler flags... -I/home/pasky/byz/pubnub-embeddedapi/atmel-sama5d3/poky/poky/build-atmel/tmp/sysroots/x86_64-linux/usr/include/ncursesw -I/home/pasky/byz/pubnub-embeddedapi/atmel-sama5d3/poky/poky/build-atmel/tmp/sysroots/x86_64-linux/usr/include I think it's because: configure:8108: checking for ncursesw5-config configure:8124: found /home/pasky/byz/pubnub-embeddedapi/atmel-sama5d3/poky/poky/build-atmel/tmp/sysroots/x86_64-linux/usr/bin/ncursesw5-config I don't see ncursesw5-config in tmp/sysroots/sama5d3xek - how do you solve situations like that, should the configure script be passed explicit ncurses paths from the commandline? (I'm not alone seeing this bug, c.f. 2 days old SO question: http://stackoverflow.com/questions/26238663/yocto-cannot-configure-alsa-utils-on-ti-am335x)