redefinition of 'struct iovec' problem with new libc-ports
I checked out the latest libc-ports from cvs. I met building problem
when using it to build arm-linux toolchain. I used crosstool. The
error appeared at building glibc startfiles which are required by
shared libgcc. In detail, it appeared at compiling
glibc-2.4/sysdeps/unix/sysv/linux/init-first.c. The error is
In file included from ../ports/sysdeps/unix/sysv/linux/arm/bits/fcntl.h:26,
../sysdeps/unix/sysv/linux/bits/uio.h:20:3: error: #error "Never include <bits/u
io.h> directly; use <sys/uio.h> instead."
In file included from ../misc/sys/uio.h:29,
../sysdeps/unix/sysv/linux/bits/uio.h:43: error: redefinition of 'struct iovec'
This is because fcntl.h added below code snippet. If I removed these
three lines, I can get the final toolchain successfully.
# include <bits/uio.h>
I'm not clear why this code snippet is needed? If I must use it, do I
miss anything else?
Re: redefinition of 'struct iovec' problem with new libc-ports
2006/6/23, Bridge Wu <[hidden email]>:
> Would you please clarify which I should check out? Does it mean
> libc-2.4 HEAD in glibc-2.4.tar.gz in sourceware cvs server? Which name
> is the module? Is the path [hidden email]:/cvs/glibc?
> Thanks. -Bridge
It's not a good idea to take a ports snapshot in addition to the
glibc-2.4 release tarball since there have been many changes. Please
check out both libc and ports HEAD like: