bug-gnulib
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: A bug in findutils?


From: Eric Blake
Subject: Re: A bug in findutils?
Date: Thu, 24 Mar 2011 14:05:13 -0600
User-agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.15) Gecko/20110307 Fedora/3.1.9-0.39.b3pre.fc14 Lightning/1.0b3pre Mnenhy/0.8.3 Thunderbird/3.1.9

On 03/24/2011 02:05 AM, Cao, Da-Shi (EB-Presales-ZTE/HW-GZ) wrote:
> The compilation of findutils 4.4.2 failed when I did a cross compile on i386 
> to x86_64. The error is that type "wint_t" didn't get defined so the 
> compilation of mbchar.c in gnulib/lib failed.
> The type "wint_t" is defined in system wchar.h under some conditions. The 
> system wchar.h is included by gnulib/lib/wchar.h.
> The cross compilation error can be demonstrated by:
> #include <stdio.h>
> #include <wchar.h>
> 
> It is supposed that "wint_t" should get defined after this sequence, but it 
> is not in this particular cross compilation.
> stdio.h includes _G_config.h, which in turn include wchar.h.
> But in the cross compilation there is a wchar.h in gunlib/lib. This header 
> file is guarded by _GL_WCHAR_H.
> This gnulib/lib/wchar.h includes system wchar.h. But when included from 
> _G_config.h, type wint_t is not defined. This is the expected behavior.
> But the "#include <wchar.h> in _G_config.h gets _GL_WCHAR_H defined, so the 
> "#include <wchar.h>" as in the demonstration is bypassed.
> I cannot figure out how to make _GL_WCHAR_H not got defined when 
> gnulib/lib/wchar.h is included by "_G_config.h".

Thanks for the report.  In reality, this is a gnulib issue, so I have
added bug-gnulib.  Also, I'm not sure if gnulib has fixed the problem in
the meantime, and findutils is just suffering from a stale gnulib
release, or if it still exists in upstream gnulib.

Are you in a position where you could help test building from git?  With
a recent gnulib.git checkout, it would be nice to know the results of:
./gnulib-tool --create-testdir --with-tests --dir=foo wchar stdio
followed by configuring in the just-created foo directory and running
'make check' for your cross compiler setup.

-- 
Eric Blake   address@hidden    +1-801-349-2682
Libvirt virtualization library http://libvirt.org

Attachment: signature.asc
Description: OpenPGP digital signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]