Skip to content

Configure script fix for glib version

Host environment

  • Operating system: Linux / any
  • QEMU version: 7.2.0

Description of problem

Script "configure" uses "pkg-config" directly, at line 2420: https://gitlab.com/qemu-project/qemu/-/blob/f9f0e6173e1d570847930abfe2b4560c7b6a964a/configure#L2420

Because of it, GLIB_VERSION in "config-host.mak" can be taken from host system, under some circumstances (if PKG_CONFIG_PATH is not defined).

In case of cross-compilation, "$pkg_config" should be used instead of "pkg-config", to use pkg-config from cross-compilation toolchain and to take GLIB_VERSION of cross-compiled glib (as it is correctly used at line 1476: https://gitlab.com/qemu-project/qemu/-/blob/f9f0e6173e1d570847930abfe2b4560c7b6a964a/configure#L1476 ).

Steps to reproduce

  1. Do not define PKG_CONFIG_PATH environment variable, use PKG_CONFIG variable instead.
  2. Try to ./configure with cross-compiled glib.
  3. GLIB_VERSION in config-host.mak will be from host glib.

Additional information

Change lihe 2420:
https://gitlab.com/qemu-project/qemu/-/blob/f9f0e6173e1d570847930abfe2b4560c7b6a964a/configure#L2420
echo "GLIB_VERSION=$(pkg-config --modversion glib-2.0)" >> $config_host_mak
to:
echo "GLIB_VERSION=$($pkg_config --modversion glib-2.0)" >> $config_host_mak

P.s. Sorry for posting the patch here, GitLab requires signing with a key to push the commit, it's too complicated to post 2-bytes fix.

Edited by Me Vs
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information