[Bug 693764] New: configure script fails to call pkg-config properly when cross-compiling

GStreamer (bugzilla.gnome.org) bugzilla at gnome.org
Wed Feb 13 23:36:44 PST 2013


https://bugzilla.gnome.org/show_bug.cgi?id=693764
  GStreamer | gstreamer (core) | git

           Summary: configure script fails to call pkg-config properly
                    when cross-compiling
    Classification: Platform
           Product: GStreamer
           Version: git
        OS/Version: Linux
            Status: UNCONFIRMED
          Severity: normal
          Priority: Normal
         Component: gstreamer (core)
        AssignedTo: gstreamer-bugs at lists.freedesktop.org
        ReportedBy: 4ernov at gmail.com
         QAContact: gstreamer-bugs at lists.freedesktop.org
     GNOME version: ---


When performing cross-compilation of master branch of gstreamer git against
custom sysroot, configure fails to find GLib as it calls pkg-config some wrong
way, although pkg-config itself is configured properly (using
PKG_CONFIG_SYSROOT_DIR and PKG_CONFIG_LIBDIR according to man page) and single
call to it gives proper results:

Here's a debug logs with PKG_CONFIG_DEBUG_SPEW on:
export PKG_CONFIG_SYSROOT_DIR=/mnt/rasp-pi-rootfs
export
PKG_CONFIG_LIBDIR=/mnt/rasp-pi-rootfs/usr/lib/arm-linux-gnueabihf/pkgconfig
export PKG_CONFIG_DEBUG_SPEW=1
1. single call: pkg-config --cflags glib-2.0
PKG_CONFIG_DEBUG_SPEW variable enabling debug spew
Adding directory '/mnt/rasp-pi-rootfs/usr/lib/arm-linux-gnueabihf/pkgconfig'
from PKG_CONFIG_PATH
Global variable definition 'pc_sysrootdir' = '/mnt/rasp-pi-rootfs'
Global variable definition 'pc_top_builddir' = '$(top_builddir)'
Option --cflags seen
Error printing enabled by default due to use of --version, --libs, --cflags,
--libs-only-l, --libs-only-L, --libs-only-other, --cflags-only-I,
--cflags-only-other or --list. Value of --silence-errors: 0
Error printing enabled
Adding virtual 'pkg-config' package to list of known packages
Scanning directory '/mnt/rasp-pi-rootfs/usr/lib/arm-linux-gnueabihf/pkgconfig'
File 'freetype2.pc' appears to be a .pc file
Will find package 'freetype2' in file
'/mnt/rasp-pi-rootfs/usr/lib/arm-linux-gnueabihf/pkgconfig/freetype2.pc'
Ignoring file '..' in search directory; not a .pc file
File 'lxpanel.pc' appears to be a .pc file
Will find package 'lxpanel' in file
'/mnt/rasp-pi-rootfs/usr/lib/arm-linux-gnueabihf/pkgconfig/lxpanel.pc'
File 'lxappearance.pc' appears to be a .pc file
Will find package 'lxappearance' in file
'/mnt/rasp-pi-rootfs/usr/lib/arm-linux-gnueabihf/pkgconfig/lxappearance.pc'
File 'gio-unix-2.0.pc' appears to be a .pc file
Will find package 'gio-unix-2.0' in file
'/mnt/rasp-pi-rootfs/usr/lib/arm-linux-gnueabihf/pkgconfig/gio-unix-2.0.pc'
File 'gmodule-no-export-2.0.pc' appears to be a .pc file
Will find package 'gmodule-no-export-2.0' in file
'/mnt/rasp-pi-rootfs/usr/lib/arm-linux-gnueabihf/pkgconfig/gmodule-no-export-2.0.pc'
File 'gmodule-2.0.pc' appears to be a .pc file
Will find package 'gmodule-2.0' in file
'/mnt/rasp-pi-rootfs/usr/lib/arm-linux-gnueabihf/pkgconfig/gmodule-2.0.pc'
Ignoring file '.' in search directory; not a .pc file
File 'gthread-2.0.pc' appears to be a .pc file
Will find package 'gthread-2.0' in file
'/mnt/rasp-pi-rootfs/usr/lib/arm-linux-gnueabihf/pkgconfig/gthread-2.0.pc'
File 'libpcrecpp.pc' appears to be a .pc file
Will find package 'libpcrecpp' in file
'/mnt/rasp-pi-rootfs/usr/lib/arm-linux-gnueabihf/pkgconfig/libpcrecpp.pc'
File 'gmodule-export-2.0.pc' appears to be a .pc file
Will find package 'gmodule-export-2.0' in file
'/mnt/rasp-pi-rootfs/usr/lib/arm-linux-gnueabihf/pkgconfig/gmodule-export-2.0.pc'
File 'libpcre.pc' appears to be a .pc file
Will find package 'libpcre' in file
'/mnt/rasp-pi-rootfs/usr/lib/arm-linux-gnueabihf/pkgconfig/libpcre.pc'
File 'libpcreposix.pc' appears to be a .pc file
Will find package 'libpcreposix' in file
'/mnt/rasp-pi-rootfs/usr/lib/arm-linux-gnueabihf/pkgconfig/libpcreposix.pc'
File 'gobject-2.0.pc' appears to be a .pc file
Will find package 'gobject-2.0' in file
'/mnt/rasp-pi-rootfs/usr/lib/arm-linux-gnueabihf/pkgconfig/gobject-2.0.pc'
File 'zlib.pc' appears to be a .pc file
Will find package 'zlib' in file
'/mnt/rasp-pi-rootfs/usr/lib/arm-linux-gnueabihf/pkgconfig/zlib.pc'
File 'glib-2.0.pc' appears to be a .pc file
Will find package 'glib-2.0' in file
'/mnt/rasp-pi-rootfs/usr/lib/arm-linux-gnueabihf/pkgconfig/glib-2.0.pc'
File 'gio-2.0.pc' appears to be a .pc file
Will find package 'gio-2.0' in file
'/mnt/rasp-pi-rootfs/usr/lib/arm-linux-gnueabihf/pkgconfig/gio-2.0.pc'
Looking for package 'glib-2.0'
Looking for package 'glib-2.0-uninstalled'
Reading 'glib-2.0' from file
'/mnt/rasp-pi-rootfs/usr/lib/arm-linux-gnueabihf/pkgconfig/glib-2.0.pc'
Parsing package file
'/mnt/rasp-pi-rootfs/usr/lib/arm-linux-gnueabihf/pkgconfig/glib-2.0.pc'
  line>prefix=/usr
 Variable declaration, 'prefix' has value '/usr'
  line>exec_prefix=${prefix}
 Variable declaration, 'exec_prefix' has value '/usr'
  line>libdir=${prefix}/lib/arm-linux-gnueabihf
 Variable declaration, 'libdir' has value '/usr/lib/arm-linux-gnueabihf'
  line>includedir=${prefix}/include
 Variable declaration, 'includedir' has value '/usr/include'
  line>
  line>glib_genmarshal=glib-genmarshal
 Variable declaration, 'glib_genmarshal' has value 'glib-genmarshal'
  line>gobject_query=gobject-query
 Variable declaration, 'gobject_query' has value 'gobject-query'
  line>glib_mkenums=glib-mkenums
 Variable declaration, 'glib_mkenums' has value 'glib-mkenums'
  line>
  line>Name: GLib
  line>Description: C Utility Library
  line>Version: 2.32.4
  line>Requires.private: libpcre
Looking for package 'libpcre'
Looking for package 'libpcre-uninstalled'
Reading 'libpcre' from file
'/mnt/rasp-pi-rootfs/usr/lib/arm-linux-gnueabihf/pkgconfig/libpcre.pc'
Parsing package file
'/mnt/rasp-pi-rootfs/usr/lib/arm-linux-gnueabihf/pkgconfig/libpcre.pc'
  line>
  line>
  line>prefix=/usr
 Variable declaration, 'prefix' has value '/usr'
  line>exec_prefix=${prefix}
 Variable declaration, 'exec_prefix' has value '/usr'
  line>libdir=${prefix}/lib/arm-linux-gnueabihf
 Variable declaration, 'libdir' has value '/usr/lib/arm-linux-gnueabihf'
  line>includedir=${prefix}/include
 Variable declaration, 'includedir' has value '/usr/include'
  line>
  line>Name: libpcre
  line>Description: PCRE - Perl compatible regular expressions C library with 8
bit character support
  line>Version: 8.30
  line>Libs: -L${libdir} -lpcre
  line>Cflags: -I${includedir} 
Path position of 'libpcre' is 1
Package libpcre has -I/usr/include in Cflags
Removing -I/usr/include from cflags for libpcre
Adding 'libpcre' to list of known packages, returning as package 'libpcre'
  line>Libs: -L${libdir} -lglib-2.0 
  line>Libs.private: -pthread -lrt  -lpcre    
Unknown keyword 'Libs.private' in
'/mnt/rasp-pi-rootfs/usr/lib/arm-linux-gnueabihf/pkgconfig/glib-2.0.pc'
  line>Cflags: -I${includedir}/glib-2.0 -I${libdir}/glib-2.0/include 
Path position of 'GLib' is 1
Adding 'glib-2.0' to list of known packages, returning as package 'glib-2.0'
 original:  GLib  libpcre 
 sorted:  GLib  libpcre 
 original:  GLib  libpcre 
 sorted:  GLib  libpcre 
-I/mnt/rasp-pi-rootfs/usr/include/glib-2.0
-I/mnt/rasp-pi-rootfs/usr/lib/arm-linux-gnueabihf/glib-2.0/include

2. Inside ./configure:
checking for GLIB... PKG_CONFIG_DEBUG_SPEW variable enabling debug spew
Adding directory
'/home/alex/unzip/rpi-qt5/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin/../arm-linux-gnueabihf/libc/usr/lib/arm-linux-gnueabihf/pkgconfig'
from PKG_CONFIG_PATH
Adding directory
'/home/alex/unzip/rpi-qt5/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin/../arm-linux-gnueabihf/libc/usr/lib/pkgconfig'
from PKG_CONFIG_PATH
Adding directory
'/home/alex/unzip/rpi-qt5/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin/../arm-linux-gnueabihf/libc/usr/share/pkgconfig'
from PKG_CONFIG_PATH
Global variable definition 'pc_sysrootdir' =
'/home/alex/unzip/rpi-qt5/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin/../arm-linux-gnueabihf/libc'
Global variable definition 'pc_top_builddir' = '$(top_builddir)'
Option --atleast-pkgconfig-version seen
Error printing disabled by default, value of --print-errors: 1
Error printing enabled
PKG_CONFIG_DEBUG_SPEW variable enabling debug spew
Adding directory
'/home/alex/unzip/rpi-qt5/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin/../arm-linux-gnueabihf/libc/usr/lib/arm-linux-gnueabihf/pkgconfig'
from PKG_CONFIG_PATH
Adding directory
'/home/alex/unzip/rpi-qt5/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin/../arm-linux-gnueabihf/libc/usr/lib/pkgconfig'
from PKG_CONFIG_PATH
Adding directory
'/home/alex/unzip/rpi-qt5/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin/../arm-linux-gnueabihf/libc/usr/share/pkgconfig'
from PKG_CONFIG_PATH
Global variable definition 'pc_sysrootdir' =
'/home/alex/unzip/rpi-qt5/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin/../arm-linux-gnueabihf/libc'
Global variable definition 'pc_top_builddir' = '$(top_builddir)'
Option --short-errors seen
no
configure: Option --errors-to-stdout seen
Option --print-errors seen
Error printing disabled by default, value of --print-errors: 1
Error printing enabled
Adding virtual 'pkg-config' package to list of known packages
Cannot open directory
'/home/alex/unzip/rpi-qt5/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin/../arm-linux-gnueabihf/libc/usr/lib/arm-linux-gnueabihf/pkgconfig'
in package search path: No such file or directory
Cannot open directory
'/home/alex/unzip/rpi-qt5/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin/../arm-linux-gnueabihf/libc/usr/lib/pkgconfig'
in package search path: No such file or directory
Cannot open directory
'/home/alex/unzip/rpi-qt5/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/bin/../arm-linux-gnueabihf/libc/usr/share/pkgconfig'
in package search path: No such file or directory
Looking for package 'glib-2.0'
Looking for package 'glib-2.0-uninstalled'
Looking for 'glib-2.0' using legacy -config scripts
Calling gnome-config
No package 'glib-2.0' found
Looking for package 'gobject-2.0'
Looking for package 'gobject-2.0-uninstalled'
Looking for 'gobject-2.0' using legacy -config scripts
Calling gnome-config
No package 'gobject-2.0' found
Looking for package 'gmodule-no-export-2.0'
Looking for package 'gmodule-no-export-2.0-uninstalled'
Looking for 'gmodule-no-export-2.0' using legacy -config scripts
Calling gnome-config
No package 'gmodule-no-export-2.0' found
configure: error: This package requires GLib >= 2.32.0 to compile.

Host system is Kubuntu 12.10 x86_64, autotools versions are
  checking for autoconf >= 2.62 ... found 2.69, ok.
  checking for automake >= 1.11 ... found 1.11.6, ok.
  checking for autopoint >= 0.17 ... found 0.18.1, ok.
  checking for libtoolize >= 2.2.6 ... found 2.4.2, ok.
  checking for pkg-config >= 0.8.0 ... found 0.26, ok.

-- 
Configure bugmail: https://bugzilla.gnome.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list