> -----Original Message-----
> From: [email protected]
> [mailto:[email protected]] On Behalf Of
> James Limbouris
> Sent: Wednesday, 26 October 2011 9:35 AM
> To: [email protected]
> Subject: [OE-core] useradd changes to dbus, base-passwd
>
> Hi,
>
> Recent changes to dbus have broken some sdk building:
>
> Missing or unbuildable dependency chain was: ['meta-toolchain-qte', 'task-qte-
> toolchain-host-nativesdk', 'qt4-tools-nativesdk', 'dbus-nativesdk',
> 'base-passwd-
> nativesdk']
>
> I think the commit introducing the base-passed dependency is
> 46e6c3fa8034b12d178d605f3f5d7efe69671a13 (dbus: use useradd class to
> allow use in read-only filesystems).
> I'm not too clear on how useradd works, so I can't tell if simply adding
> BBCLASSEXTEND = "native nativesdk" to base-passwd is sufficient. I'd expect
> that this would cause dbus to add itself to the sdk sysroot's passwd (which
> previously didn't exist?). Seems harmless enough... I'm giving it a try now,
> but
> any advice or opinions would be appreciated.
It seems that adding BBCLASSEXTEND = "native nativesdk" to base-passwd and
shadow-sysroot is not sufficient.
dbus itself will not build for nativesdk:
NOTE: package dbus-nativesdk-1.4.12-r1: task do_install: Started
ERROR: Function 'useradd_sysroot' failed (see
/home/james/oe/build/tmp-eglibc/work/i686-nativesdk-ricasdk-linux/dbus-nativesdk-1.4.12-r1/temp/log.do_install.1735
for further information)
ERROR: Logfile of failure stored in:
/home/james/oe/build/tmp-eglibc/work/i686-nativesdk-ricasdk-linux/dbus-nativesdk-1.4.12-r1/temp/log.do_install.1735
Log data follows:
| DEBUG: SITE files ['endian-little', 'bit-32', 'ix86-common', 'common-linux',
'common-glibc', 'i686-linux', 'common']
| + cd
/home/james/oe/build/tmp-eglibc/work/i686-nativesdk-ricasdk-linux/dbus-nativesdk-1.4.12-r1/dbus-1.4.12
| + useradd_sysroot
| + export
PSEUDO=/home/james/oe/build/tmp-eglibc/sysroots/i686-linux/usr/local/rica-eglibc-i686-armv5te/sysroots/i686-ricasdk-linux/usr/bin/pseudo
| +
PSEUDO=/home/james/oe/build/tmp-eglibc/sysroots/i686-linux/usr/local/rica-eglibc-i686-armv5te/sysroots/i686-ricasdk-linux/usr/bin/pseudo
| + export
PSEUDO_LOCALSTATEDIR=/home/james/oe/build/tmp-eglibc/sysroots/i686-nativesdk-ricasdk-linux/usr/local/rica-eglibc-i686-armv5te/sysroots/i686-ricasdk-linux/var/pseudo
| +
PSEUDO_LOCALSTATEDIR=/home/james/oe/build/tmp-eglibc/sysroots/i686-nativesdk-ricasdk-linux/usr/local/rica-eglibc-i686-armv5te/sysroots/i686-ricasdk-linux/var/pseudo
| + D=/home/james/oe/build/tmp-eglibc/sysroots/i686-nativesdk-ricasdk-linux
| + useradd_preinst
| + OPT=
| + SYSROOT=
| + test x/home/james/oe/build/tmp-eglibc/sysroots/i686-nativesdk-ricasdk-linux
'!=' x
| +
SYSROOT=/home/james/oe/build/tmp-eglibc/sysroots/i686-nativesdk-ricasdk-linux
| + OPT='--root
/home/james/oe/build/tmp-eglibc/sysroots/i686-nativesdk-ricasdk-linux'
| + GROUPADD_PARAM='-r netdev'
| + USERADD_PARAM='--system --home
/usr/local/rica-eglibc-i686-armv5te/sysroots/i686-ricasdk-linux/var/lib/dbus
--no-create-home --user-group messagebus'
| + test 'x-r netdev' '!=' x
| + echo 'Running groupadd commands...'
| Running groupadd commands...
| ++ echo '-r netdev'
| ++ cut -d ';' -f 1
| + opts='-r netdev'
| ++ echo '-r netdev'
| ++ cut -d ';' -f 2-
| + remaining='-r netdev'
| + test 'x-r netdev' '!=' x
| ++ echo '-r netdev'
| ++ awk '{ print $NF }'
| + groupname=netdev
| ++ grep '^netdev:'
/home/james/oe/build/tmp-eglibc/sysroots/i686-nativesdk-ricasdk-linux/etc/group
| grep:
/home/james/oe/build/tmp-eglibc/sysroots/i686-nativesdk-ricasdk-linux/etc/group:
No such file or directory
| ++ true
| + group_exists=
| + test x = x
| + eval
/home/james/oe/build/tmp-eglibc/sysroots/i686-linux/usr/local/rica-eglibc-i686-armv5te/sysroots/i686-ricasdk-linux/usr/bin/pseudo
groupadd --root
/home/james/oe/build/tmp-eglibc/sysroots/i686-nativesdk-ricasdk-linux -r netdev
| ++
/home/james/oe/build/tmp-eglibc/sysroots/i686-linux/usr/local/rica-eglibc-i686-armv5te/sysroots/i686-ricasdk-linux/usr/bin/pseudo
groupadd --root
/home/james/oe/build/tmp-eglibc/sysroots/i686-nativesdk-ricasdk-linux -r netdev
|
/home/james/oe/build/tmp-eglibc/work/i686-nativesdk-ricasdk-linux/dbus-nativesdk-1.4.12-r1/temp/run.useradd_sysroot.1735:
line 129:
/home/james/oe/build/tmp-eglibc/sysroots/i686-linux/usr/local/rica-eglibc-i686-armv5te/sysroots/i686-ricasdk-linux/usr/bin/pseudo:
No such file or directory
| ERROR: Function 'useradd_sysroot' failed (see
/home/james/oe/build/tmp-eglibc/work/i686-nativesdk-ricasdk-linux/dbus-nativesdk-1.4.12-r1/temp/log.do_install.1735
for further information)
NOTE: package dbus-nativesdk-1.4.12-r1: task do_install: Failed
ERROR: Task 1370
(virtual:nativesdk:/home/james/oe/sources/oe-core/meta/recipes-core/dbus/dbus_1.4.12.bb,
do_install) failed with exit code '1'
Perhaps we should not inherit useradd when building for nativesdk? After all,
the sdk sysroots have not had /etc/passwd in the past.
James
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core