From: Mark Hatle <mark.hatle@windriver.com>
To: <openembedded-core@lists.openembedded.org>
Subject: Re: psuedo-native strangeness on 64 bit build machine
Date: Tue, 28 Feb 2012 23:13:47 -0600 [thread overview]
Message-ID: <4F4DB40B.6000300@windriver.com> (raw)
In-Reply-To: <CAGDS+nmNeyC3P+x+mk0g-qOKhkJ5pMNhX-ckBXr4F273poq2yw@mail.gmail.com>
On 2/28/12 10:35 PM, Steve Sakoman wrote:
> I did a clean build on an Ubuntu 64 bit build machine a couple of days
> ago with no issues.
>
> After a pull of today I did an image build for an OMAP3 machine and
> encountered an issue with psuedo-native.
>
> First I got this familiar message:
>
> Pseudo is not present but is required, building this first before the main build
>
> which seemed a bit strange since pseudo was built in the previous
> clean build. The build proceeded until task 75 and then failed with
> the following error:
>
> NOTE: Running task 75 of 77 (ID: 6,
> virtual:native:/home/steve/source/yocto/poky/meta/recipes-devtools/pseudo/pseudo_1.2.bb,
> do_compile)
> NOTE: package pseudo-native-1.2-r5: task do_compile: Started
> ERROR: Function failed: do_compile (see
> /media/data/yocto/tmp/work/x86_64-linux/pseudo-native-1.2-r5/temp/log.do_compile.32657
> for further information)
> ERROR: Logfile of failure stored in:
> /media/data/yocto/tmp/work/x86_64-linux/pseudo-native-1.2-r5/temp/log.do_compile.32657
> Log data follows:
> | ERROR: Function failed: do_compile (see
> /media/data/yocto/tmp/work/x86_64-linux/pseudo-native-1.2-r5/temp/log.do_compile.32657
> for further information)
> | SQLite header for version 3007010 found.
> | NOTE: make -j 4 -e MAKEFLAGS= libpseudo
> | ccache gcc -isystem/media/data/yocto/tmp/sysroots/x86_64-linux/usr/include
> -O2 -pipe -pipe -std=gnu99 -Wall -W -Wextra -fPIC
> -D_LARGEFILE64_SOURCE -D_ATFILE_SOURCE -m32
> -DPSEUDO_PREFIX='"/media/data/yocto/tmp/sysroots/x86_64-linux/usr"'
> -DPSEUDO_SUFFIX='""' -DPSEUDO_BINDIR='"bin"'
> -DPSEUDO_LIBDIR='"lib/pseudo/lib"'
> -DPSEUDO_LOCALSTATEDIR='"var/pseudo"' -DPSEUDO_VERSION='"1.2"' -O2 -g
> -L/media/data/yocto/tmp/sysroots/x86_64-linux/usr/lib
> -I/media/data/yocto/tmp/sysroots/x86_64-linux/usr/include
> -Wl,-R/media/data/yocto/tmp/sysroots/x86_64-linux/usr/lib -shared -o
> lib/pseudo/lib/libpseudo.so \
> | pseudo_client.o pseudo_ipc.o \
> | pseudo_wrappers.o pseudo_tables.o pseudo_util.o -ldl -lpthread
> | /usr/bin/ld: i386:x86-64 architecture of input file
> `pseudo_client.o' is incompatible with i386 output
> | /usr/bin/ld: i386:x86-64 architecture of input file `pseudo_ipc.o'
> is incompatible with i386 output
> | /usr/bin/ld: i386:x86-64 architecture of input file
> `pseudo_wrappers.o' is incompatible with i386 output
> | /usr/bin/ld: i386:x86-64 architecture of input file
> `pseudo_tables.o' is incompatible with i386 output
> | /usr/bin/ld: i386:x86-64 architecture of input file `pseudo_util.o'
> is incompatible with i386 output
> | /usr/bin/ld: final link failed: Invalid operation
> | collect2: ld returned 1 exit status
> | make: *** [lib/pseudo/lib/libpseudo.so] Error 1
> | ERROR: oe_runmake failed
> NOTE: package pseudo-native-1.2-r5: task do_compile: Failed
> ERROR: Task 6 (virtual:native:/home/steve/source/yocto/poky/meta/recipes-devtools/pseudo/pseudo_1.2.bb,
> do_compile) failed with exit code '1'
> NOTE: Tasks Summary: Attempted 75 tasks of which 74 didn't need to be
> rerun and 1 failed.
>
> Summary: 1 task failed:
> virtual:native:/home/steve/source/yocto/poky/meta/recipes-devtools/pseudo/pseudo_1.2.bb,
> do_compile
> Summary: There was 1 ERROR message shown, returning a non-zero exit code.
>
> Has anyone else been successful building on 64 bit machines?
I'm building pseudo on 64-bit machines right now, no problem.
The error you are seeing is pseudo attempting to build both a 64-bit and a
32-bit wrapper. The 32-bit wrapper is built when the recipe detects support for
both 32-bit and 64-bit userspace. It does this by looking first that your host
is 64-bit, and then for /usr/include/gnu/stubs-32.h. Assuming it finds those,
it assumes your system has 32-bit binaries on it.
To avoid a 32-bit build of pseudo, on a 64-bit machine. You need to set
NO32LIBS = "1". This instructs pseudo to avoid the 32-bit binary build. (If
your machine has 32-bit binaries on it, you need to fix your compiler to allow
for 32-bit userspace builds, otherwise pseudo will be incapable of wrapping any
32-bit binaries, resulting in a potential mismatch of user, groups and modes set
by any 32-bit applications.
--Mark
> I see no issues on my 32 bit build machines.
>
> Forcing a clean build of pseudo (by hand, since -c cleansstate
> obviously won't work with pseudo-native!) resulted in a good build,
> both of psuedo-native and the image.
>
> Any ideas?
>
> Steve
>
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
next prev parent reply other threads:[~2012-02-29 5:22 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-02-29 4:35 psuedo-native strangeness on 64 bit build machine Steve Sakoman
2012-02-29 5:13 ` Mark Hatle [this message]
2012-02-29 5:29 ` Steve Sakoman
2012-02-29 5:36 ` Mark Hatle
2012-02-29 8:45 ` Petr Štetiar
2012-02-29 14:22 ` Steve Sakoman
2012-02-29 15:12 ` Steve Sakoman
2012-03-01 10:33 ` Khem Raj
2012-03-01 14:30 ` Steve Sakoman
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=4F4DB40B.6000300@windriver.com \
--to=mark.hatle@windriver.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