On 2018-09-04 12:35, Peter Maydell wrote:
> On 4 September 2018 at 08:02, Thomas Huth <th...@redhat.com> wrote:
>> When cross-compiling QEMU for a target that significantly differs from
>> the host, the current information in config.status is not enough to
>> properly re-create the configuration. For example when I try to test
>> my build with the mingw32 cross-compiler, I regularly get this error
>> after the build system tried to re-create the configuration with the
>> config.status file:
>>
>> ERROR: sizeof(size_t) doesn't match GLIB_SIZEOF_SIZE_T.
>>        You probably need to set PKG_CONFIG_LIBDIR
>>        to point to the right pkg-config files for your
>>        build target
>> RAND
>> A similar problem exists for the "windres" tool, where you have to
>> set the WINDRES variable in case it has a different name.
>> So let's fix these issues by storing the configuration for theseq
>> variables in the config.status file, too.
> 
> This is also true if the user set CC or RANLIB or any of a bunch
> of other environment variables that configure uses. If we're going
> to store those settings in config.status we should consistently
> do it for all environment variables we care about, I think.

Ok, never mind, forget about WINDRES (and the other tools like RANLIB),
that's not required, I just noticed that I simply forgot to specify
"--cross-prefix=i686-w64-mingw32-" when running configure. With that
option, i686-w64-mingw32-windres is properly used, and the pkg-config
problem also goes away since i686-w64-mingw32-pkg-config is used instead.

But still, I think at least the PKG_CONFIG_LIBDIR part could be useful,
since the same problem e.g. also occurs when trying do a 32-bit build on
a 64-bit host, i.e. when running configure with "--extra-cflags=-m32".
Or is there also another configure switch that can help to get
PKG_CONFIG_LIBDIR right here?

 Thomas

Reply via email to