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 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.