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 -~----------~----~----~----~------~----~------~--~---