[Buildroot] error: conflicting types for 'sendfile64'
Khem Raj
khem at mvista.com
Wed Feb 1 20:27:43 UTC 2006
Paugam Luc said the following on 02/01/2006 08:02 AM:
> Hi all,
>
> While compiling latest Buildroot sources with the following config:
> Target Architecture = 2. arm (TARGET_arm)
> Target Processor Type = 1. Generic Arm
> (CONFIG_GENERIC_ARM)
> Target Processor Endianness = 1. Little Endian
> (ARCH_LITTLE_ENDIAN)
> => the other parameters set to default.
>
> And the following packages:
> 12549917 2005-06-12 23:00 binutils-2.16.1.tar.bz2
> 27246826 2004-09-06 23:45 gcc-3.4.2.tar.bz2
> 4194659 2005-07-19 00:15 linux-libc-headers-2.4.31.tar.bz2
> 3557244 2006-02-01 09:14 uClibc-snapshot.tar.bz2
>
> I got the following error when compiling uClibc into toolchain_build_arm
> [...]
> CC libc/sysdeps/linux/common/sched_yield.os
> CC libc/sysdeps/linux/common/select.os
> CC libc/sysdeps/linux/common/sendfile.os
> libc/sysdeps/linux/common/sendfile.c:19: error: conflicting
> types for 'sendfile64'
> ./include/sys/sendfile.h:47: error: previous declaration of
> 'sendfile64' was here
> libc/sysdeps/linux/common/sendfile.c:19: error: conflicting
> types for 'sendfile64'
> ./include/sys/sendfile.h:47: error: previous declaration of
> 'sendfile64' was here
>
It seems your kernel-headers unistd.h doesn't have sendfile64 syscall
defined and you are using LFS support in uclibc. Can you try a build
without LFS support turned on.
Secondly it looks like an issue in sendfile prototype being used for
sendfile64 forcibly in sendfile.c when the syscall is not defined.
Difference is in type of off_t and off64_t parameters to these functions
More information about the uClibc
mailing list