Hello all, Just wondering if anyone has actually ever used the direct interface. I got the latest version out of CVS yesterday. When I try and build the code I get the following error: [snip] mikee 03:57 PM $ make all ln -s ../devextras.h devextras.h ln -s ../yaffs_ecc.c yaffs_ecc.c ln -s ../yaffs_ecc.h yaffs_ecc.h ln -s ../yaffs_guts.c yaffs_guts.c ln -s ../yaffs_guts.h yaffs_guts.h ln -s ../yaffsinterface.h yaffsinterface.h ln -s ../yportenv.h yportenv.h gcc -c -Wall -DCONFIG_YAFFS_DIRECT -DCONFIG_YAFFS_SHORT_NAMES_IN_RAM -g dtest.c -o dtest.o In file included from dtest.c:9: yaffsfs.h:169: warning: no semicolon at end of struct or union yaffsfs.h:169: error: syntax error before '.' token yaffsfs.h:170: error: syntax error before '.' token yaffsfs.h:171: error: syntax error before '.' token dtest.c: In function `copy_in_a_file': dtest.c:18: warning: implicit declaration of function `open' dtest.c:21: warning: implicit declaration of function `read' dtest.c:32: warning: implicit declaration of function `close' dtest.c: In function `dumpDirFollow': dtest.c:184: error: storage size of `s' isn't known dtest.c:222: warning: int format, off_t arg (arg 3) dtest.c:184: warning: unused variable `s' dtest.c: In function `dumpDir': dtest.c:229: error: storage size of `s' isn't known dtest.c:267: warning: int format, off_t arg (arg 3) dtest.c:229: warning: unused variable `s' dtest.c: In function `long_test': dtest.c:306: error: storage size of `ystat' isn't known dtest.c:468: warning: int format, off_t arg (arg 2) dtest.c:518: warning: implicit declaration of function `yaffs_DumpDevStruct' dtest.c:306: warning: unused variable `ystat' dtest.c: In function `cache_bypass_bug_test': dtest.c:621: warning: unused variable `i' make: *** [dtest.o] Error 1 [/snip] I've searched through the code quite a bit but can't seem to come up with what is wrong with the structure. It seems as though my development system's header files are over-riding something. Is YAFFS direct compile-able on a Linux box? Can I _not_ include standard headers? The documentation on the direct interface says the following: [snip] Compilation Configuration Configuration is done in four places: * yaffscfg.c: OS specific functions * yaffscfg.h: Preferably only change YAFFSFS_N_HANDLES, the number of files that can be simultaneously opened. * yportenv.h: Preferably do not change this. * Compile options. The valid compile options for the YAFFS direct interface are: * CONFIG_YAFFS_DIRECT must be enabled to use the direct interface. * CONFIG_YAFFS_SHORT_NAMES_IN_RAM define to enable short name caching. This is suggested in cases unless RAM is very limited. [/snip] I checked yaffscfg.c and it appeared to have reasonably stubbed-out functions which should allow the system to compile. Everything else listed there says to not change it. So, I guess I'm stuck for the moment. Any input would be greatly appreciated. Thanks, --mike -- Michael Erickson Senior Software Engineer Logic Product Development (612) 436-5118 mailto:mikee@logicpd.com http://www.logicpd.com