[OE-core] pkg-config bug crashes 'bitbake glib-2.0-native' in FC15.x86_64

dashesy dashesy at gmail.com
Wed Oct 5 09:21:42 UTC 2011


Hi,

I am using these in my local.conf with master branch of oe-core:
DISTRO="angstrom-2010.x"
MACHINE="beagleboard"

The build for 'bitbake glib-2.0-native' (or actually 'bitbake
meta-toolchain') will finally reach a run.do_configure for 'package
glib-2.0-native-1_2.28.8-r5: task do_configure: Started'
which runs the "oe-core/build/tmp-eglibc/sysroots/x86_64-linux/usr/bin/pkg-config"
 for auto build
This leads to the following chain
pkg-config(cross)->gnome-config->pkg-config->glib-config->pkg-config->...

dashesy  21266 21265 21266  0    1 01:56 pts/0    00:00:00 /bin/sh -e
/home/dashesy/buildroot/oe-core/build/tmp-eglibc/work/x86_64-linux/glib-2.0-native-1_2.28.8-r5/temp/run.do_configure.21265
root     21870   935 21870  0    1 01:56 ?        00:00:00 sleep 60
dashesy  22246 21266 22246  0    1 01:56 pts/0    00:00:00 /bin/sh
/home/dashesy/buildroot/oe-core/build/tmp-eglibc/work/x86_64-linux/glib-2.0-native-1_2.28.8-r5/glib-2.28.8/configure
--build=x86_64-linux --host=x86_64-linux --target=x86_64-linux
--prefix=/home/dashesy/buildroot/oe-core/build/tmp-eglibc/sysroots/x86_64-linux/usr
--exec_prefix=/home/dashesy/buildroot/oe-core/build/tmp-eglibc/sysroots/x86_64-linux/usr
--bindir=/home/dashesy/buildroot/oe-core/build/tmp-eglibc/sysroots/x86_64-linux/usr/bin
--sbindir=/home/dashesy/buildroot/oe-core/build/tmp-eglibc/sysroots/x86_64-linux/usr/sbin
--libexecdir=/home/dashesy/buildroot/oe-core/build/tmp-eglibc/sysroots/x86_64-linux/usr/libexec
--datadir=/home/dashesy/buildroot/oe-core/build/tmp-eglibc/sysroots/x86_64-linux/usr/share
--sysconfdir=/home/dashesy/buildroot/oe-core/build/tmp-eglibc/sysroots/x86_64-linux/etc
--sharedstatedir=/home/dashesy/buildroot/oe-core/build/tmp-eglibc/sysroots/x86_64-linux/com
--localstatedir=/home/dashesy/buildroot/oe-core/build/tmp-eglibc/sysroots/x86_64-linux/var
--libdir=/home/dashesy/buildroot/oe-core/build/tmp-eglibc/sysroots/x86_64-linux/usr/lib
--includedir=/home/dashesy/buildroot/oe-core/build/tmp-eglibc/sysroots/x86_64-linux/usr/include
--oldincludedir=/home/dashesy/buildroot/oe-core/build/tmp-eglibc/sysroots/x86_64-linux/usr/include
--infodir=/home/dashesy/buildroot/oe-core/build/tmp-eglibc/sysroots/x86_64-linux/usr/share/info
--mandir=/home/dashesy/buildroot/oe-core/build/tmp-eglibc/sysroots/x86_64-linux/usr/share/man
--disable-silent-rules --disable-dependency-tracking --disable-dtrace
--disable-systemtap --enable-nls --enable-dtrace=no
dashesy  22671 22246 22671  0    1 01:56 pts/0    00:00:00
/home/dashesy/buildroot/oe-core/build/tmp-eglibc/sysroots/x86_64-linux/usr/bin/pkg-config
--exists --print-errors zlib
dashesy  22672 22671 22672  0    1 01:56 pts/0    00:00:00 sh -c
gnome-config --libs zlib > /dev/null 2>&1
dashesy  22673 22672 22673  0    1 01:56 pts/0    00:00:00 /bin/sh
/usr/bin/gnome-config --libs zlib
dashesy  22674 22673 22674  0    1 01:56 pts/0    00:00:00 pkg-config
--variable=libdir glib
dashesy  22675 22674 22675  0    1 01:56 pts/0    00:00:00 /bin/sh
/usr/bin/glib-config --version
dashesy  22676 22675 22676  0    1 01:56 pts/0    00:00:00 pkg-config
--variable prefix glib
dashesy  22677 22676 22677  0    1 01:56 pts/0    00:00:00 /bin/sh
/usr/bin/glib-config --version
dashesy  22678 22677 22678  0    1 01:56 pts/0    00:00:00 pkg-config
--variable prefix glib
dashesy  22679 22678 22679  0    1 01:56 pts/0    00:00:00 /bin/sh
/usr/bin/glib-config --version

I first saw this problem in angstrom-2008 in oe, then in angstrom-2010
in oe (both with pkg-config version 0.23), and now the same phenomenon
in angstrom-2010 in oe-core with version 0.25 whcih is same as my
local machine.

It is easy to reproduce this without bitbake too

First set the environment variables (PATH, PKG_CONFIG_* as I copied
from the run_doconfigure file):

export PATH="/home/dashesy/buildroot/oe-core/build/tmp-eglibc/sysroots/x86_64-linux/usr/bin/armv7a-linux:/home/dashesy/buildroot/oe-core/build/tmp-eglibc/sysroots/x86_64-linux/usr/bin:/home/dashesy/buildroot/oe-core/build/tmp-eglibc/sysroots/x86_64-linux/usr/sbin:/home/dashesy/buildroot/oe-core/build/tmp-eglibc/sysroots/x86_64-linux/usr/bin:/home/dashesy/buildroot/oe-core/build/tmp-eglibc/sysroots/x86_64-linux/sbin:/home/dashesy/buildroot/oe-core/build/tmp-eglibc/sysroots/x86_64-linux//bin:/home/dashesy/buildroot/oe-core/scripts/native-intercept:/home/dashesy/buildroot/oe-core/scripts:/home/dashesy/buildroot/oe-core/bitbake/bin:/usr/lib64/ccache:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/dashesy/bin:/home/dashesy/buildroot/oe-core/scripts"
export PKG_CONFIG_DIR="/home/dashesy/buildroot/oe-core/build/tmp-eglibc/sysroots/x86_64-linux/usr/lib/pkgconfig"
export PKG_CONFIG_LIBDIR="/home/dashesy/buildroot/oe-core/build/tmp-eglibc/sysroots/x86_64-linux/usr/lib/pkgconfig"
export PKG_CONFIG_DISABLE_UNINSTALLED="yes"
export PKG_CONFIG_PATH="/home/dashesy/buildroot/oe-core/build/tmp-eglibc/sysroots/x86_64-linux/usr/lib/pkgconfig:/home/dashesy/buildroot/oe-core/build/tmp-eglibc/sysroots/x86_64-linux/usr/share/pkgconfig"

Then run either of these two comamnds:
/home/dashesy/buildroot/oe-core/build/tmp-eglibc/sysroots/x86_64-linux/usr/bin/pkg-config
--variable=libdir glib
or
/home/dashesy/buildroot/oe-core/build/tmp-eglibc/sysroots/x86_64-linux/usr/bin/pkg-config
--exists --print-errors zlib

Notice, this might crash or halt your system




More information about the Openembedded-core mailing list