that's because the "struct dirent" defined in Bionic is the kernel's stuct
dirent64.
(look at the comment in <sys/dirent.h> that comes with Bionic).

This is done intentionally. dirent64 is not portable, if your code depends
on it, use something like:

#define  dirent64  dirent

and it should work.

If your code depends on "struct dirent" and "struct dirent64" being
different, then you have a problem,
but I would qualify that as a self-inflicted one :-)

On Mon, Jul 27, 2009 at 7:33 AM, louis <dmq...@gmail.com> wrote:

>
> Hi It's my first posting.
>
> I am porting a ntive c application to android phone to share with
> windows machine.
> My compile error messages show that the source code needs "struct
> dirent64" but it is missing in bionic/libc/include/dirent.h which is
> the only one included when compiled but in bionic/libc/kernel/common/
> linux/dirent.h which is not included but contains "struct dirent64". I
> have double checked for both case of compiling against glibc and
> bionic and noticed that there is no error in case of glibc. Would
> someone kindly give me a reasonable direction to get rid of compile
> error. Should I add '#include' in the bionic/libc/kernel/common/linux/
> dirent.h to include bionic/libc/kernel/common/linux/dirent.h?
>
> >
>

--~--~---------~--~----~------------~-------~--~----~
unsubscribe: android-porting+unsubscr...@googlegroups.com
website: http://groups.google.com/group/android-porting
-~----------~----~----~----~------~----~------~--~---

Reply via email to