[PATCH] x86_64/stat64: define struct stat64 as struct stat

Markos Chandras markos.chandras at gmail.com
Wed Oct 10 16:35:43 UTC 2012


On Wed, Oct 10, 2012 at 2:34 PM, Dmitry V. Levin <ldv at altlinux.org> wrote:
> On Wed, Oct 10, 2012 at 02:19:30PM +0100, Markos Chandras wrote:
>> On Wed, Oct 10, 2012 at 2:09 PM, Dmitry V. Levin <ldv at altlinux.org> wrote:
>> > On Wed, Oct 10, 2012 at 02:03:57PM +0100, Markos Chandras wrote:
>> >> On Wed, Oct 10, 2012 at 1:55 PM, Dmitry V. Levin <ldv at altlinux.org> wrote:
>> >> > On Wed, Oct 10, 2012 at 01:48:02PM +0100, Markos Chandras wrote:
>> >> >> On Wed, Oct 10, 2012 at 1:35 PM, Dmitry V. Levin <ldv at altlinux.org> wrote:
>> >> >> > On Wed, Oct 10, 2012 at 12:59:43PM +0100, Markos Chandras wrote:
>> >> >> >> From: Markos Chandras <markos.chandras at imgtec.com>
>> >> >> >>
>> >> >> >> x86_64 does not define a struct stat64 in asm/stat.h. It uses
>> >> >> >> struct stat instead.
>> >> >> >>
>> >> >> >> This fixes a compilation problem when LFS is used
>> >> >> >>
>> >> >> >> file.c:1073:16: error: storage size of ‘statbuf’ isn’t known
>> >> >> >
>> >> >> > It means that, according to m4/long_long.m4, sizeof(off_t) > sizeof(long)
>> >> >> > on this x86_64 system.  How could that be possible?
>> >> >>
>> >> >> Hi Dmitry,
>> >> >>
>> >> >> I am not sure what you are asking. This is a buildroot system
>> >> >> configured for x86_64.
>> >> >>
>> >> >> The build log is here:
>> >> >> http://autobuild.buildroot.net/results/bb66a3a06d26f558e1c4c0593bb68e7af1d82398/build-end.log
>> >> >
>> >> > It mentions strace 4.5.20 that was released 2.5 years ago.
>> >> > Please try to build strace 4.7 instead.
>> >>
>> >> The same problem happens with 4.7 and the patch that I submitted is
>> >> based on this version of strace
>> >
>> > Then the original question stands: how could it happen that
>> > HAVE_LONG_LONG_OFF_T is defined on your x86_64 system?
>> >
>> I don't think it is defined, because if it was then this would have worked:
>
> You can have a syntax error with "struct stat64 statbuf" definition only
> if HAVE_STAT64 is defined but struct stat64 is not actually defined.
> Please provide a full strace build log.
>

Now that I see it, it may be a buildroot specific problem. I will do
some testing and I will let you know. Unfortunately I don't have a
native toolchain with LFS
support so I need to make sure it is not a buildroot specific problem.

-- 
Regards,
Markos




More information about the Strace-devel mailing list