From: Martin Jansa <martin.jansa@gmail.com>
To: Patches and discussions about the oe-core layer
<openembedded-core@lists.openembedded.org>
Subject: python: wrong config/Makefile when reused sstate from other machine build
Date: Mon, 7 Nov 2011 10:34:03 +0100 [thread overview]
Message-ID: <20111107093403.GA4237@jama.jama.net> (raw)
[-- Attachment #1: Type: text/plain, Size: 5189 bytes --]
While testing basichash signature generator and multimachine builds (qemuarm and qemuarmcopy as MACHINE) I got few errors like:
| arm-oe-linux-gnueabi-gcc -march=armv5te -mthumb -mthumb-interwork -mtune=arm926ej-s --sysroot=/OE/shr-core/tmp/sysroots/qemuarm -DNDEBUG -g -O3 -Wall -Wstrict-prototypes -O2 -pipe -g -feliminate-unused-debug-types -fPIC -I/OE/shr-core/tmp/sysroots/arm-oe-linux-gnueabi/usr/include/python2.7 -I/OE/shr-core/tmp/sysroots/qemuarm/usr/include/python2.7 -c alsaaudio.c -o build/temp.linux-x86_64-2.7/alsaaudio.o
| alsaaudio.c:19:0: warning: "PyUnicode_FromString" redefined [enabled by default]
| /OE/shr-core/tmp/sysroots/qemuarm/usr/include/python2.7/unicodeobject.h:194:0: note: this is the location of the previous definition
| alsaaudio.c: In function 'initalsaaudio':
| alsaaudio.c:1929:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
| alsaaudio.c:1932:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
| creating build/lib.linux-x86_64-2.7
| arm-oe-linux-gnueabi-gcc -march=armv5te -mthumb -mthumb-interwork -mtune=arm926ej-s --sysroot=/OE/shr-core/tmp/sysroots/qemuarmcopy -shared -L. -L/OE/shr-core/tmp/sysroots/qemuarmcopy/usr/lib -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed -O2 -pipe -g -feliminate-unused-debug-types build/temp.linux-x86_64-2.7/alsaaudio.o -L/OE/shr-core/tmp/sysroots/qemuarmcopy/usr/lib -lasound -lpython2.7 -o build/lib.linux-x86_64-2.7/alsaaudio.so
| /OE/shr-core/tmp/sysroots/x86_64-linux/usr/libexec/armv5te-oe-linux-gnueabi/gcc/arm-oe-linux-gnueabi/4.6.2/ld: cannot find -lasound
| collect2: ld returned 1 exit status
| error: command 'arm-oe-linux-gnueabi-gcc' failed with exit status 1
| + bbfatal 'python setup.py build_ext execution failed.'
| + echo 'ERROR: python setup.py build_ext execution failed.'
| ERROR: python setup.py build_ext execution failed.
| + exit 1
NOTE: package python-pyalsaaudio-0.4-ml1: task do_compile: Failed
ERROR: Task 7853 (/OE/shr-core/meta-openembedded/meta-oe/recipes-devtools/python/python-pyalsaaudio_0.4.bb, do_compile) failed with exit code '1'
NOTE: Running task 7164 of 8028 (ID: 7857, /OE/shr-core/meta-openembedded/meta-oe/recipes-devtools/python/python-pyalsaaudio_0.4.bb, do_populate_lic)
And that's caused by machine specific sysroot while reusing python's config/Makefile
which points to wrong sysroot (ie to qemuarmcopy's sysroot while building for qemuarm).
What's even worse is that if I did build alsa for qemuarmcopy
before building python-pyalsaaudio I wouldn't get this error at all
and qemuarm python-pyalsaaudio will be linked agains (possibly different)
libasound from qemuarmcopy sysroot..
OE @ ~/shr-core $ diff tmp/sysroots/qemuarmcopy/usr/lib/python2.7/config/Makefile tmp/sysroots/qemuarm/usr/lib/python2.7/config/Makefile
OE @ ~/shr-core $ grep qemuarmcopy tmp/sysroots/qemuarm/usr/lib/python2.7/config/Makefile
CC= arm-oe-linux-gnueabi-gcc -march=armv5te -mthumb -mthumb-interwork -mtune=arm926ej-s --sysroot=/OE/shr-core/tmp/sysroots/qemuarmcopy
CXX= arm-oe-linux-gnueabi-g++ -march=armv5te -mthumb -mthumb-interwork -mtune=arm926ej-s --sysroot=/OE/shr-core/tmp/sysroots/qemuarmcopy
LDFLAGS=-L. -L/OE/shr-core/tmp/sysroots/qemuarmcopy/usr/lib -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed
LIBDIR= /OE/shr-core/tmp/sysroots/qemuarmcopy/usr/lib
INCLUDEDIR= /OE/shr-core/tmp/sysroots/qemuarmcopy/usr/include
CONFIG_ARGS= '--build=x86_64-linux' '--host=arm-oe-linux-gnueabi' '--target=arm-oe-linux-gnueabi' '--prefix=/usr' '--exec_prefix=/usr' '--bindir=/usr/bin' '--sbindir=/usr/sbin' '--libexecdir=/OE/shr-core/tmp/sysroots/qemuarmcopy/usr/libexec' '--datadir=/usr/share' '--sysconfdir=/etc' '--sharedstatedir=/com' '--localstatedir=/var' '--libdir=/usr/lib' '--includedir=/OE/shr-core/tmp/sysroots/qemuarmcopy/usr/include' '--oldincludedir=/usr/include' '--infodir=/usr/share/info' '--mandir=/usr/share/man' '--disable-silent-rules' '--disable-dependency-tracking' '--with-libtool-sysroot=/OE/shr-core/tmp/sysroots/qemuarmcopy' '--with-threads' '--with-pymalloc' '--with-cyclic-gc' '--without-cxx' '--with-signal-module' '--with-wctype-functions' '--enable-shared' 'build_alias=x86_64-linux' 'host_alias=arm-oe-linux-gnueabi' 'target_alias=arm-oe-linux-gnueabi' 'CC=arm-oe-linux-gnueabi-gcc -march=armv5te -mthumb -mthumb-interwork -mtune=arm926ej-s --sysroot=/OE/shr-core/tmp/sysroots/qemuarmcopy' 'CFLAGS=-O2 -pipe -g -feliminate-unused-debug-types' 'LDFLAGS=-L. -L/OE/shr-core/tmp/sysroots/qemuarmcopy/usr/lib-Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed' 'CPPFLAGS=' 'CPP=arm-oe-linux-gnueabi-gcc -E --sysroot=/OE/shr-core/tmp/sysroots/qemuarmcopy -march=armv5te -mthumb -mthumb-interwork -mtune=arm926ej-s'
$(RUNSHARED) /OE/shr-core/tmp/sysroots/qemuarmcopy/usr/libexec/oah/translate ./$(BUILDPYTHON) -E -tt $(TESTPROG) -uall $(TESTOPTS)
What's proper fix? Make python machine specific so it's never reused from sstate?
Regards,
--
Martin 'JaMa' Jansa jabber: Martin.Jansa@gmail.com
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 205 bytes --]
reply other threads:[~2011-11-07 10:40 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
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=20111107093403.GA4237@jama.jama.net \
--to=martin.jansa@gmail.com \
--cc=openembedded-core@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox